sql - 我的右括号抛出错误

标签 sql sql-server

我正在尝试执行此查询,但我不断收到错误消息

Msg 102, Level 15, State1
Incorrect syntax near ')'. 

请您查看一下我的查询好吗?我相信我已经为每个 SQL 关键字添加了适当的括号。

USE [db]
GO

SET NOCOUNT ON

DECLARE @AlertDateTime date
      , @HostName  varchar(50)
      , @Program varchar(100)
      , @Event varchar(100)
      , @Entity varchar(50)
      , @Class tinyint
      , @Severity tinyint
      , @AlertMessage varchar(1024)
      , @SkipFlag char(1) 

select cast(getdate() as date)

IF EXISTS 

(SELECT * FROM SendAlertLog 

WHERE EXISTS
(
    SELECT SendAlertLog.Event  
    FROM SendAlertLog
    GROUP BY SendAlertLog.Event 
    HAVING COUNT (1) >= 2 
)
AND SendAlertLog.SkipFlag != 'Y' 
AND AlertDateTime <= DATEADD (mi,-30,@AlertDateTime)
)

我不知道我包含或排除了什么错误。请帮忙

最佳答案

看起来您有一个 if,但如果表达式为 true,则无需执行任何语句。你有

IF EXISTS(...)

但是你需要

IF EXISTS(...)
   DO_SOMETHING

关于sql - 我的右括号抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16248417/

相关文章:

sql - 使用 t-SQL 检索 XML 元素名称

sql-server - 无法使用 pymssql 连接到 SQL Server 数据库,但可以使用底层 freetds tsql 连接

sql - 将表字段更改为 UNIQUE

sql - 在 SQL 中没有得到正确的计数

sql - 执行存储在表列中的动态 SQL 语句

c# - .net sql 异常处理 - 如何获取 sp 参数/值

SQL:有关 LEFT OUTER JOIN 的帮助

sql - 将结构化 XML 文件导入 SQL 表

sql - 将 XML 分解为 SQL 表时遇到问题

c# - 使用 select 语句后将值存储在变量中