2012-04-06 24 views
0

で複数のSELECT文でテーブルに挿入します。私はそのそれぞれの値宛先名と宛先日付として列名とselect文を記述しようとしていますように私は、クエリからの結果を持っているMY SQL

+------------------+------------+ 
| meta_key   | meta_value | 
+------------------+------------+ 
| Destination Name | Shivapuri | 
| Destination Date | 26/03/2012 | 
+------------------+------------+ 

Shivapuriと'26/03/2012 'です。これはMY SQLのクエリでどのように行うことができますか?

+2

これは、ピボットテーブルと呼ばれ、SOに前に何回も回答されていますhttp://stackoverflow.com/questions/7674786/mysql -pivot-table – liquorvicar

+0

Pivotはむしろ不要です。構造の性質上、 'destination name'と' destination date'が1つしかありません。 – Starx

+0

名前と日付はいくつありますか – Starx

答えて

1

これらの線に沿って何かそれを行う必要があります -

SELECT 
    GROUP_CONCAT(IF(meta_key = 'Destination Name', meta_value, NULL)) AS `Destination Name`, 
    GROUP_CONCAT(IF(meta_key = 'Destination Date', meta_value, NULL)) AS `Destination Date` 
FROM tbl_name 
GROUP BY record_identifier 
1
SELECT 
    (CASE WHEN meta_key = 'Destination Name' THEN meta_value END) as name, 
    (CASE WHEN meta_key = 'Destination Date' THEN meta_value END) as date 
FROM `yourtable` 
関連する問題