与许多表格不同

时间:2015-04-06 07:33:21

标签: mysql select distinct

我需要你的帮助 我有这个问题:

SELECT t1.hotel_name
    , t2.address
    , t1.city
    , t1.url AS url1
    , t2.photo
    , t1.partnername AS partnername1
    , t1.maxrate AS maxrate1
    , t1.minrate AS minrate1
    , t2.partnername AS partnername2
    , t2.url AS url2
    , t2.maxrate AS maxrate2
    , t2.minrate AS minrate2
    , t3.partnername AS partnername3
    , t3.url AS url3
    , t3.maxrate AS maxrate3
    , t3.minrate AS minrate3
    , t4.partnername AS partnername4
    , t4.url AS url4
    , t4.maxrate AS maxrate4
    , t4.minrate AS minrate4 
FROM table1 AS t1
LEFT JOIN table2 AS t2 ON t1.hotel_name=t2.hotel_name
LEFT JOIN table3 AS t3 ON t1.hotel_name=t3.hotel_name
LEFT JOIN table4 AS t4 ON t1.hotel_name=t4.hotel_name
WHERE t1.city = 'London'
LIMIT 20;

我需要查询没有返回重复数据 一行,一个名字。

1 个答案:

答案 0 :(得分:0)

您可以使用Group by子句:

SELECT t1.hotel_name, t2.address, t1.city, t1.url AS url1, t2.photo,
t1.partnername AS partnername1, t1.maxrate AS maxrate1, 
t1.minrate AS minrate1, t2.partnername AS partnername2, 
t2.url AS url2, t2.maxrate AS maxrate2, t2.minrate AS minrate2,
t3.partnername AS partnername3, t3.url AS url3, t3.maxrate AS maxrate3,  
t3.minrate AS minrate3, t4.partnername AS partnername4, t4.url AS url4,
t4.maxrate AS maxrate4, t4.minrate AS minrate4 FROM table1 AS t1 
LEFT JOIN table2 AS t2 ON t1.hotel_name=t2.hotel_name
LEFT JOIN table3 AS t3 ON t1.hotel_name=t3.hotel_name
LEFT JOIN table4 AS t4 ON t1.hotel_name=t4.hotel_name
WHERE t1.city = 'London' 
group by t1.hotel_name,t2.address
LIMIT 20;
相关问题