SQL - 不同的子查询

Mar*_*rco 1 sql select subquery distinct

有人可以解释如何执行此查询:

我必须选择没有重复“idPrdodotto”的所有字段

那是桌子

那是我不工作的查询:

SELECT *
FROM riempie1
WHERE idProdotto IN (SELECT DISTINCT idProdotto
                     FROM riempie1
                    );
Run Code Online (Sandbox Code Playgroud)

Gor*_*off 6

您似乎正在学习 SQL,所以我会有点冗长。

SELECT DISTINCTIN子查询什么都不做。什么都没有。TheIN隐含地做了 aSELECT DISTINCT因为如果有东西在(1, 2, 3),那么有东西在(1, 1, 1, 2, 2, 3)

你要做的是idProdotto统计表中出现的次数。您需要idProdotto只出现一次的值。

典型的方法是使用GROUP BY,COUNT(*)HAVING