2017-05-23 58 views
-1

我在contact_details mysql表中創建了以下記錄。基於命令的mysql分組記錄

+-----------+-------------+------------+ 
|data_ref_id| data_value | data_order | 
+-----------+-------------+------------+ 
|ref001  | Alex  |  001 | 
|ref001  | 040-345-234 |  002 | 
|ref002  | Adam  |  001 | 
|ref002  | 040-225-254 |  002 | 
+-----------+-------------+------------+ 

如何獲取以下格式的記錄?

+------+-------------+ 
| Alex | 040-345-234 | 
| Adam | 040-225-254 | 
+------+-------------+ 
+3

您計劃使用'order'的列是什麼,因爲不能保證輸出的顯示順序與您在問題中提到的順序相同。 – Utsav

+2

與@Utsav所說的相似 - 你怎麼知道哪個數字應該與亞當以及哪一個與亞歷克斯對應。如果這仍然是項目早期階段,那麼應該考慮更改數據模型。 –

+1

更奇怪的問題有沒有什麼關係之間的亞歷克斯040-345-234和亞當040-225-254 –

回答

2

如果data_order總是001002那麼你可以使用這樣的事情。

select t1.data_value as name,t2.data_value as phone 
from your_table t1 
inner join your_table t2 
on t1.data_ref_id=t2.data_ref_id 
and t1.data_order='001' 
and t2.data_order='002'