我有两张table
channel_titles
channel_grid
内部 channel_grid
,有一列名为 col_id_15
.
我需要询问 entry_id
哪里
要么 entry_id
不存在于 channel_grid
table
或者如果 entry_id
是否存在于 channel_grid
table,table col_id_15
不等于 1
我原以为下面的办法行得通。
SELECT ct.entry_id
FROM channel_titles AS ct
LEFT JOIN channel_grid AS g ON g.entry_id = ct.entry_id
WHERE g.col_id_15 != '1'
有人能帮忙吗?
3条答案
按热度按时间wmtdaxz31#
从频道标题中选择ct.entry\u id作为ct left join channel\u grid作为g on g.entry\u id=ct.entry\u id
其中g.col\u id\u 15<>1或g.entry\u id为空
好吧,我想你的问题可以进一步简化以便理解。
qyyhg6bp2#
根据你的两个要求,这应该是可行的:
只需确保g.col\u id\u 15是varchar,因为单引号将其视为字符串而不是数字。如果它是一个int,你可以去掉单引号。
lo8azlld3#
你的问题似乎是对的。但是,如果您想获取通道网格表中不存在的所有条目\ id,则必须检查g.entry\ id是否等于null。
该条件是必需的,因为将任何值与null进行比较总是返回null。例如: