我有一个场景,其中 users
表中有一个配置文件 profiles
table。
我正在检查用户是否使用此查询填写了特定字段:
SELECT users.displayName
FROM `users`
INNER JOIN profiles
ON users.username = profiles.user_username
WHERE (skills IS NULL OR skills = '') OR (background IS NULL OR background = '');
然后我使用这个查询来检查用户是否有一个配置文件:
SELECT *
FROM users
WHERE users.username NOT IN (SELECT user_username FROM profiles)
这是因为两个表中的相关字段都位于用户的用户名中。
是否可以将这两个查询合并起来,使其显示为select all users who not have a profile,or have a incomplete profile?
这可能是难以置信的简单,但我只是没有连接点。
3条答案
按热度按时间6rqinv9w1#
您可以对profile使用左连接和che。username为null
6tdlim6h2#
使用
not exists
:bz4sfanl3#