[英]SQL - How do I create a view that pivots and existing table
我在用戶創建的表單上有一個用於動態字段的表:
表格的格式如下:
ID | FIELD NAME
-------------------
1 | Gross Gallons
為了與其他表形成連接,我需要創建一個如下所示的視圖
ID_1
------------
Gross Gallons
任何幫助,將不勝感激
謝謝
這是一種制作動態字段的簡單方法。
給定表:
mysql> select * from dyna_field;
+------+---------------+
| id | field_name |
+------+---------------+
| 1 | Gross Gallons |
| 2 | Net Gallons |
| 3 | Total |
+------+---------------+
進行動態查詢:
select
group_concat(concat('(case when id = ', id, ' then field_name else "" end) as ID_', id, ' ')) into @sql_case
from dyna_field
join(SELECT @sql_case:='') c;
set @sql_case = concat('select ', @sql_case, ', 1 as uid from dyna_field;');
prepare statement FROM @sql;
execute statement;
+---------------+-------------+-------+-----+
| ID_1 | ID_2 | ID_3 | uid |
+---------------+-------------+-------+-----+
| Gross Gallons | | | 1 |
| | Net Gallons | | 1 |
| | | Total | 1 |
+---------------+-------------+-------+-----+
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.