Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 我想做的是,消除所有修改日期小于CI_NAME列中每个条目的最大日期的行_Sql_Sql Server - Fatal编程技术网

Sql 我想做的是,消除所有修改日期小于CI_NAME列中每个条目的最大日期的行

Sql 我想做的是,消除所有修改日期小于CI_NAME列中每个条目的最大日期的行,sql,sql-server,Sql,Sql Server,我得到一个错误: 执行错误:关键字“HAVING”附近的语法不正确 我试图做的是,删除所有修改日期小于ciu NAME列中每个条目的最大日期的行,如下所示: DELETE FROM MOBILE_CELONIS_SITES WHERE CI_NAME IN (SELECT CI_NAME FROM MOBILE_CELONIS_SITES GROUP BY CI_NAME HAVI

我得到一个错误:

执行错误:关键字“HAVING”附近的语法不正确


我试图做的是,删除所有修改日期小于
ciu NAME
列中每个条目的最大日期的行,如下所示:

DELETE FROM MOBILE_CELONIS_SITES 
WHERE CI_NAME IN (SELECT CI_NAME 
                  FROM MOBILE_CELONIS_SITES 
                  GROUP BY CI_NAME 
                  HAVING COUNT(CI_NAME) > 1) 
HAVING MODIFIED_DATE != (SELECT MAX(MODIFIED_DATE) 
                         FROM MOBILE_CELONIS_SITES 
                         GROUP BY CI_NAME);

每个
select
最多有一个
having
子句。是的,我正在使用一个select,但另一个在不同的查询中,并且没有
having
DELETE
中。只需将第二个
having
切换到
,并且
我在执行此查询时在“t”附近出现此错误语法。是否复制了确切的查询?我看不出这个查询有任何问题。是的,精确查询
DELETE FROM MOBILE_CELONIS_SITES t
WHERE exists 
      (Select 1 from MOBILE_CELONIS_SITES tt
        Where t.CI_NAME = tt.CI_NAME
          And tt.MODIFIED_DATE > t.MODIFIED_DATE)