我在玩sqlite时遇到了以下问题:看来不可能将一个子查询嵌套在Have子句中

当我尝试通过以下方式调用查询时:

... having count(select * from produkt) > 1


我得到错误:


OperationalError:“选择”附近:语法错误


执行时

 ... having count(1) > 1


一切都很好

您对此有任何解决方法吗?

编辑2:

我想这样写:

select distinct standort.name, standort.ort
from produktion
    join standort on id_standort = standort.id
    join produkt on id_produkt = produkt.id
where produkt.gewicht < 1

EXCEPT

select distinct standort.name, standort.ort
from produktion
    join standort on id_standort = standort.id
    join produkt on id_produkt = produkt.id
where produkt.kategorie = "Spiel"


以更优雅的方式,使用“具有”

干杯,非常感谢!

Wojtek

最佳答案

我认为这比您目前的选择更适合您的意图

SELECT ...
FROM Standort
     JOIN produktion ...
     JOIN produkt ...
WHERE product.kategorie != "Spiel" AND produkt.gewicht > 1

09-26 05:58