SQL Server SELECT @VARIABLE = TOP 1

标签 sql sql-server sql-server-2012

我正在尝试在存储过程中执行以下操作

DECLARE @TICKET_AGE INT
SELECT @TICKET_AGE = TOP 1 (DATEDIFF(second, DATE_ENTERED, GETDATE())/60) AS TICKET_AGE
FROM TICKETS

但它给出错误,说 INCORRECT SYNTAX NEAR 'TOP' 我做错了什么?

所以我已经更新了我的代码,如下所示...但现在关键字“AS”附近的语法不正确。

    -- DECLARE VARIABLE
    DECLARE @TICKET_AGE INT

    -- PULL THE DATA
    SELECT TOP 1 @TICKET_AGE = (DATEDIFF(second, DATE_ENTERED, GETDATE())/60) AS TICKET_AGE
    FROM TICKETS
    WHERE LOWER(STATUS_DESCRIPTION) LIKE '%new%'
    ORDER BY DATE_ENTERED ASC

最佳答案

TOP 1 位于变量之前:

SELECT TOP 1 @TICKET_AGE = DATEDIFF(second, DATE_ENTERED, GETDATE()) / 60
FROM TICKETS

关于SQL Server SELECT @VARIABLE = TOP 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37034152/

相关文章:

sql - 如何使用SQL在线查询DBpedia?

java - 如何修改SQL语句?

sql - 如何将单元格返回到sql函数中的变量中

sql-server - DBCC CHECKIDENT——模式感知?

sql - 从 .bak 文件恢复时动态获取数据库逻辑名称

sql - 使用 longtext 列将表转换为 JSON 数组

java - 如何将jooq表保存为变量然后引用它

c# - 什么是 API 用法?

sql-server - 在 CASE 语句中使用 CHARINDEX 和 SUBSTRING

sql-server - 在 sql server 的唯一键中有一个空值的目的是什么?