mysql查詢之后排列問題
問題描述
有兩個2表,table1 和 table2問題如下:
select a.a,a.b from table1 a;select b.a,b.b from table2 b;有2個查詢,比如table1 和 table2 都只有1條數據,我想把查詢的結果放在一條 select a.a,a.b,b.a,b.b from table1 a,table2 b where a.id = b.aid這種是可以 然后b表有多條數據和a關聯的時候的時候我想重命名字段名我想要的結果:select a.a,a.b,b.a,b.b,c.a,c.b from table1 a,table2 b,table2 c where a.id = b.aid and a.id=c.aid現在我不確定table2有幾條數據是和table1綁定的,而且table2數據查詢出來的字段如果有5條每條字段名稱都需要重命名求個解決方法
可能是我描述的不清楚,連表查詢可以的話,我也不需要提問了現在有3張表:A:id,caseid B:id,caseid,accidentid,name(張三) C:id,caseid,accident,name(李四) B和C 是同一張表,只是數據不同,但是都綁定這A我最后要查詢出來的格式是:A.id,A.caseid,B.accident,B.name,C.accident,C.name 這是一條數據6列
問題解答
回答1:select * from table1 as a right join table2 as b on a.id = b.aid;
回答2:select * from table1 as a right join table2 as b on a.id = b.aid;
right join的用法這個語句的意思就是 以table2為主表連接table1
而且你拿出來的字段名字就是a.a等等啊,這個就不會重復了啊,因為你字段里制定了這個字段來自哪個表要是想重新命名可以使用 a.a as T1-a(任取名字)
select * from table2 as b left join table1 as a on a.id = b.aid;
也可以使用 left join 只是把table1和table2的位置換了一下!
回答3:問題1:返回不同數目的字段要放在一條sql里面?
問題2:是否只能table2最多有幾條不同的字段?
相關文章:
1. docker不顯示端口映射呢?2. angular.js - 關于$apply()3. 關docker hub上有些鏡像的tag被標記““This image has vulnerabilities””4. macos - mac下docker如何設置代理5. MySQL數據庫中文亂碼的原因6. docker - 各位電腦上有多少個容器啊?容器一多,自己都搞混了,咋辦呢?7. docker gitlab 如何git clone?8. mysql - 新浪微博中的關注功能是如何設計表結構的?9. css - C#與java開發Windows程序哪個好?10. docker-compose 為何找不到配置文件?
