当字段和代码重复且ID发生变化时,我想拥有所有for。 字段的值应为“position”
MyTable
ID field code
9990 position 2434
3275 position 2434
3604 position 2434
2436 position 2434
6547 stage wip
6547 position 5247
3604 type CAR
Outcome:
ID field code
9990 position 2434
3275 position 2434
3604 position 2434
2436 position 2434
答案 0 :(得分:1)
如果我理解你想用字段查询所有行,而代码有多个ID。(我假设ID是一个自动增量字段)。
下一个查询将检索字段和代码具有多个元组的所有行
SELECT field,code,COUNT(field) AS `number_of_distinct_IDs`
FROM MyTable
GROUP BY field,code
HAVING COUNT(field)>1;
使用上一个查询的结果,你可以过滤你的表,这样做(有很多方法)你可以创建一个时态表来存储这些值,或者可以使用派生表,它依赖于你的要求和您的数据量。我会选择第二个。
查询如下所示:
SELECT ID,pivot.field,pivot.code
FROM MyTable AS pivot
JOIN
(
SELECT field,code
FROM MyTable
GROUP BY field,code
HAVING COUNT(field)>1
) AS Filter USING(field,code);
我希望这个答案可以帮到你
此致