我有三个表:
我要选择客户端名称的客户端名称,CAR名称。
我已经尝试过了,但是我不知道自己在做什么错
SELECT
CLIENT.name, CAR.name, CLIENT.id
FROM CLIENT
LEFT JOIN CAR-owner ON CLIENT.id = CAR-owner.id_owner
LEFT JOIN CAR ON CAR.id = CAR-owner.id_car
WHERE CLIENT.id = ?;
答案 0 :(得分:0)
只需加入:
select cl.name client_name, ca.name car_name
from client cl
inner join car_owner co on co.id_owner = cl.id
inner join car ca on ca.id = cl.id_car
where cl.id = ?
我强烈建议不要在表名中使用诸如-
之类的字符。这需要在您使用它的所有地方都引用该标识符:
select cl.name client_name, ca.name car_name
from client cl
inner join `car-owner` co on co.id_owner = cl.id
inner join car ca on ca.id = cl.id_car
where cl.id = ?
我不确定这里是否确实需要left join
,因此我使用了inner join
。如果需要,可以将其还原。