从多个表中选择SQLselect

Wiz*_*ard 0 sql select left-join

2个表users,并phones在表phonesid,user id,phone,和category 我想所有的选择users,并为每个用户的手机,其类别为1,但如果用户没有手机,我想也选择他没有手机.

SELECT * 
FROM users
   LEFT JOIN phones ON users.id = phones.id 
WHERE phones.category = 1
Run Code Online (Sandbox Code Playgroud)

这个选择只有在userphone,但如果用户没有电话,则不选择此用户.如果user没有havo ,如何更改选择它也选择用户phone

Ami*_*ngh 5

SELECT * FROM users 
Left JOIN phones 
ON users.id = phones.id and phones.category = 1 
Run Code Online (Sandbox Code Playgroud)

如果您在左侧或右侧连接中使用的位置比内部连接的位置要好,请尝试上面的方法,或者您可以尝试这样做.

SELECT * FROM users 
Left JOIN phones 
ON users.id = phones.id where ( phones.category = 1 OR phones.category is null)
Run Code Online (Sandbox Code Playgroud)