我試圖從兩個表中獲取日期,但問題是他們正在返回多個行的個人ID。 我有表像這樣: -從MySQL中的兩個表中檢索數據
Transaction
-----------
tid|startdate|enddate|status
100|2-9-2015|2-9-2015|success
200|1-9-2015|1-9-2015|failed
300|31-8-2015|31-8-2015|success
Test_Details
------------
id|tid|test_name|test_status
1|100|Test1|yes
2|100|Tes2|no
3|100|Test3|yes
4|200|Test1|no
5|200|Tes2|no
6|200|Test3|yes
7|300|Test1|yes
8|300|Tes2|no
9|300|Test3|no
期望的結果: -
tid|startdate|enddate|status|Test1|Test2|Test3
100|2-9-2015|2-9-2015|success|yes|no|yes
200|1-9-2015|1-9-2015|failed|no|no|yes
300|31-8-2015|31-8-2015|success|yes|no|no
我使用這個查詢: -
select distinct ts.tid as tid, ts.startdate as startdate,
ts.enddate as enddate, ts.status as status,
CASE WHEN (td.test_name='Test1') THEN test_status END as Test1,
CASE WHEN (td.test_name='Test2') THEN test_status END as Test2,
CASE WHEN (td.test_name='Test3') THEN test_status END as Test3
from transation ts, test_details td where ts.tid =td.id
但是我卻越來越多行。 這裏是SQLFiddle演示
喜添加組後用自己的查詢,我想第二個,但它佔用太多的時間執行。 –
@NikhilGupta你有一個關於transaction.tid的索引嗎?和一個關於test_details.id?這應該會提高性能 – fthiella