SQLite的:查询列出
问题描述:
我有两个表:SQLite的:查询列出
表1:
ID_Number | Description|
a | abc
b | cde
c | fgh
表2:
ID | Title | value
a | phone number | 555-1234
a | address | somewhere USA
a | mobile_number | 867-5309
b | phone number | ...
b | address | ...
b | mobile_number | ...
我想创建一个新表属于每个的所有数据存在于表2中的ID_number。
查询我可以列出所有。
select Table1.ID_Number, Table2.ID from Table1, Table2
where Table1_ID_number = Table2.ID))
order by ID_Number
但我想创建一个新表:
Table3
|ID | Description| ID_data
a , abc, "Address_A_PhoneNumber_A_Mobile_Number_A"
b , cde, "Address_B_PhoneNumber_B_Mobile_Number_B"
这可能与SQL ???
答
我需要编辑您的问题,并将第三列添加到包含各种类型的信息值的第二个表。没有这样的事情,我怕你的问题没有道理。
我们可以按ID
进行汇总,并将地址和电话号码转换为单个连接字符串。
SELECT
t1.ID_Number,
t1.Description
MAX(CASE WHEN t2.title = 'address' THEN t2.value END) || '_' ||
MAX(CASE WHEN t2.title = 'phone number' THEN t2.value END) || '_' ||
MAX(CASE WHEN t2.title = 'mobile_number' THEN t2.value END) AS ID_data
FROM Table1 t1
INNER JOIN Table2 t2
ON t1.ID_Number = t2.ID
GROUP BY
t1.ID_Number,
t1.Description;