[英]Usage of EXCEPT keyword in subquery
我必須確定一組要從表中刪除的行,這是我用來確定要刪除的范圍的邏輯。
我有 2 個表 AAA 和 BBB 使用 Sybase ASE。
AAA 有 2 列:日期、標簽和價格 BBB 有 3 列:日期和標簽
我使用以下查詢來確定 AAA 中但不在 B 中的日期
SELECT DATE1 FROM AAA WHERE LABEL='toto' GROUP BY DATE1
EXCEPT
SELECT DATE1 FROM BBB WHERE LABEL='toto'
我想重復使用上面的查詢來確定要從 AAA 中刪除的行的范圍
我想運行如下所示的東西:
SELECT *
FROM AAA
WHERE LABEL='TOTO'
AND DATE1 in (
(SELECT DATE1 FROM AAA WHERE LABEL='toto' GROUP BY DATE1)
EXCEPT
(SELECT DATE1 FROM BBB WHERE LABEL='toto'))
運行此查詢引發了以下錯誤:
關鍵字“EXCEPT”附近的語法不正確。 [SQL State=ZZZZZ,DB Errorcode=156] 接下來:')' 附近的語法不正確。 [SQL 狀態=42000,數據庫錯誤代碼=102]
我已經確定了錯誤到底是什么。
因此我的問題是:
謝謝 !
運行此查詢引發了以下錯誤:
關鍵字“EXCEPT”附近的語法不正確。 [SQL State=ZZZZZ,DB Errorcode=156] 接下來:')' 附近的語法不正確。 [SQL 狀態=42000,數據庫錯誤代碼=102]
也許像這樣?
SELECT *
FROM AAA
WHERE LABEL='TOTO'
AND DATE1 in (
SELECT DATE1 FROM AAA WHERE LABEL='toto'
EXCEPT
SELECT DATE1 FROM BBB WHERE LABEL='toto')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.