多表聯查時兩表關聯第三表同一id的問題解決方法
用示例來說明問題更好些,可以參照下面的關係圖和**來幫助理解。
只是在原有基礎上再新增乙個bbsusers表的別名引用就行了。問題也很簡單,就不多說了!
資料庫關係圖如下:
**如下:
--根據固定的id值,查詢顯示主帖的標題、作者姓名、內容,所有的跟帖的標題、跟帖人的姓名、跟帖內容、跟帖時間
select t.ttopic as '主帖標題', tu.uname as '作者姓名', t.tcontents as '內容',
r.rtopic as '跟帖標題', ru.uname as '跟帖人姓名', r.rcontents as '跟帖內容', r.rtime as '跟帖時間'
from bbstopic as t, bbsreply as r, bbsusers as tu, bbsusers as ru
where t.tid = r.rtid and tu.uid = t.tuid and ru.uid = r.ruid and t.tid = 2
order by r.rtime
--或:
select t.ttopic as '主帖標題', tu.uname as '作者姓名', t.tcontents as '內容',
r.rtopic as '跟帖標題', ru.uname as '跟帖人姓名', r.rcontents as '跟帖內容', r.rtime as '跟帖時間'
from bbstopic as t
inner join bbsreply as r
on t.tid = r.rtid
inner join bbsusers as tu
on tu.uid = t.tuid
inner join bbsusers as ru
on ru.uid = r.ruid
where t.tid = 2
order by r.rtime
oracle 兩表關聯查詢
情景描述 查詢學生表student,sname,age資訊及所在班級clazz表 select sname,age,cname from student t1 left join clazz t2 on t1.cid t2.cid select sname,age,cname from studen...
兩個MYSQL表關聯查詢
高階sql語句inner join 非常實用 在接觸這個語句之前 我要到資料庫查詢不同表的 內容我一般需要執行2次sql語句 迴圈2次。而現在有了這個語句 可以簡化成只執行1次語句 迴圈一次 result mysql query select states.state id,states.state...
兩個MYSQL表關聯查詢
高階sql語句inner join 非常實用 在接觸這個語句之前 我要到資料庫查詢不同表的 內容我一般需要執行2次sql語句 迴圈2次。而現在有了這個語句 可以簡化成只執行1次語句 迴圈一次 result mysql query select states.state id,states.state...