gpt4 book ai didi

mysql - 如何仅过滤在一列中发生变化但在接下来的两列中相同的行?

转载 作者:行者123 更新时间:2023-11-29 12:12:35 26 4
gpt4 key购买 nike

我想要当字段和代码重复且 ID 更改时的所有情况。字段应具有“位置”值

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

最佳答案

如果我了解您想要查询具有多个 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);

我希望这个答案可以帮助你

问候

关于mysql - 如何仅过滤在一列中发生变化但在接下来的两列中相同的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30401979/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com