我正在处理一个SQL查询,在这里我想返回一列的值,只有在同一行中另一列具有不同的值时才返回。
这是我的数据的示例:
表:混合
ID WEIGHT
1 100
1 100
2 150
2 150
2 150
3 200
我想退货的是:
ID WEIGHT
1 100
2 150
3 200
这是我现在正在尝试的方法:
DECLARE @UNIQUE_INGREDIENT DECIMAL(10,3);
SET @UNIQUE_INGREDIENT = SELECT DISTINCT Mix.ID,
Mix.WEIGHT
FROM MixLot
我应该如何编写查询以返回所需的表?
我将比较每个id的最小和最大权重,并仅返回它们相等的行:
SELECT id, MAX(weight)
FROM mytable
GROUP BY id
HAVING MAX(weight) = MIN(weight)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句