gpt4 book ai didi

mysql - 查找mysql表中没有倒数记录的记录

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

我有一个表格,假设它的一个字段中有“颜色”,另一个字段中有“形状”,但没有特定的字段顺序:

FIELD1   | FIELD2
---------|----------
Red | Triangle
Red | Square
Red | Circle
Triangle | Red
Square | Red

我正在尝试查找没有互惠记录的记录并创建一个。所以上表中没有倒数

Red | Circle

虽然还有

Red | Triangle
Red | Square

是否有一个查询可以a) 确定哪些记录没有倒数2)创建那些记录?

最佳答案

您可以执行以下操作:

SELECT a.FIELD2, a.FIELD1 FROM tbl a 
LEFT JOIN tbl b ON b.FIELD2=a.FIELD1 AND b.FIELD1=a.FIELD2
WHERE b.FIELD1 is NULL

请参阅此处的工作示例:SQLfiddle1

SELECT 通过查找倒数记录将表连接到自身。如果找不到该记录,则按相反的列顺序列出原始表的该记录。

创建丢失的记录,只需使用 INSERT 语句中的输出,例如:

INSERT INTO tbl (FIELD1,FIELD2)
SELECT a.FIELD2, a.FIELD1 FROM tbl a
LEFT JOIN tbl b ON b.FIELD2=a.FIELD1 AND b.FIELD1=a.FIELD2
WHERE b.FIELD1 is NULL

完整示例演示 SQLfiddle2 .

关于mysql - 查找mysql表中没有倒数记录的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32424343/

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