我有3张桌子: 1)客户2)租赁3)演员。
我想要这样的结果:租赁表包含客户租用的电影
我们将从此查询中获得结果:
SELECT customers.first_name,customers.last_name
FROM customers LEFT JOIN
rentals
ON customers.customer_id = rentals.customer_id
我想要的是这个结果:我必须找出在actors表中具有相同名字和姓氏的客户。
我已经使用此查询完成了查询以查找customers表和actors表之间的匹配结果:
SELECT DISTINCT customers.first_name,customers.last_name
FROM customers JOIN
actors
ON customers.first_name LIKE CONCAT('%',actors.first_name,'%') AND customers.last_name LIKE CONCAT('%',actors.last_name,'%')
请帮我找一个查询。
我试过这样,但我不知道它是否准确:
SELECT customers.first_name
, customers.last_name
FROM customers
JOIN actors
ON customers.first_name LIKE CONCAT('%',actors.first_name,'%')
AND customers.last_name LIKE CONCAT('%',actors.last_name,'%')
WHERE customers.customer_id IN (SELECT rentals.customer_id FROM rentals)
答案 0 :(得分:2)
如果您想要客户的名字和最后相同(而不是在相同的模式中)分别使用演员的名字和姓氏,=
就足够了。
SELECT DISTINCT customers.first_name,customers.last_name
FROM customers
JOIN actors
ON customers.first_name = actors.first_name AND customers.last_name = actors.last_name
WHERE customers.customer_id IN (SELECT rentals.customer_id FROM rentals)