gpt4 book ai didi

mysql - 带有父子条件的自引用 MySql 表

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

我在 Mysql 上有一个表,其中包含自引用父/子记录:

myTable

id | parent_id | text_1 | text_2

我需要使用以下伪代码进行查询:

SELECT * FROM myTable WHERE parent_id=-1 
AND IT HAS AT LEAST ONE CHILD
AND text_1 != 'something'
AND child.text_2 != 'somethingElse'

此处AND IT HAS AT LEAST ONE CHILD 表示:至少有一行的parent_id 等于您要查找的行的id。

这段伪代码在MySql中的转换是什么? Laravel eloquent 的查询也可以。

最佳答案

要查看某个项目是否有子项,请在父/子关系上将表左连接到其自身。

SELECT 
*
FROM myTable a
LEFT JOIN myTable b
ON a.id = b.parent_id
WHERE (NOT b.id IS NULL) AND
a.id = -1 AND
a.text_1 <> 'something' AND
b.text_2 <> 'somethingElse'

关于mysql - 带有父子条件的自引用 MySql 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45229684/

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