求写一个查询语句,面试时碰到的难题
求写一个查询语句,面试时遇到的难题!
a表字段
key,value
例如:
编码 值
A001 成都
B001 男
C001 党员
b表字段
姓名 性别 所在城市 政治面貌
张三 B001 A001 C001
李四 ...
王五 ...
查询结果应该是:
姓名 性别 所在城市 政治面貌
张三 男 成都 党员
李四 ...
王五 ...
求如何查询?
------解决思路----------------------
------解决思路----------------------
LS正解,就是两个表关联查询
a表字段
key,value
例如:
编码 值
A001 成都
B001 男
C001 党员
b表字段
姓名 性别 所在城市 政治面貌
张三 B001 A001 C001
李四 ...
王五 ...
查询结果应该是:
姓名 性别 所在城市 政治面貌
张三 男 成都 党员
李四 ...
王五 ...
求如何查询?
------解决思路----------------------
SELECT T1.姓名,T2.value[性别],T3.value[所在城市],T4.value[政治面貌]
FROM b表 T1
LEFT JOIN a表 T2 ON T1.性别=T2.[key]
LEFT JOIN a表 T3 ON T1.所在城市=T3.[key]
LEFT JOIN a表 T4 ON T1.政治面貌=T4.[key]
------解决思路----------------------
LS正解,就是两个表关联查询