0
点赞
收藏
分享

微信扫一扫

SQL3-基础经典:多表join

googlefrank 2022-04-25 阅读 35
mysql

一.题目

最后查询结果要求出现:profile_id  ; name ;  address;

筛选顾客信息

   from_location=‘CHENNAL’  ;   to_location = 'HYDERABAD'

SELECT app.profile_id,CONCAT_WS(',',app.first_name,app.last_name) AS name,app.address
FROM air_passenger_profile app
JOIN air_ticket_info ati ON app.profile_id =ati.profile_id
JOIN air_flight af ON ati.flight_id=af.flight_id--可以直接跳过air_flight_details表
WHERE af.from_location='CHENNAL' 
AND af.to_location='HYDERABAD'
GROUP BY app.profile_id--去重,一个客户可能买了多张票
ORDER BY app.profile_id;

根据关联列进行连接,一个join另一个,多次Join

air_passenger_profile 和 air_ticket_info 关联列就是profile_id

air_flight和air_ticket_info关联列就是flight_id

关联多表之后再用WHERE筛选

(何尝不是一种ntr ~)

举报

相关推荐

0 条评论