SQL查询问题请教,求SQL大神指点迷津

示例如下
比如有两张表,关联关系

A表

ID NAME
1 主1
2 主2

B表

ID PID KEY VALUE
1 1 a 1111
2 1 b 2222
3 1 c 3333
4 2 d 4444

希望实现查询结果

ID NAME KEY_a VALUE_a Key_b value_b key_c value_c
1 主1 a 1111 b 2222 c 3333

查询结果存储为视图

SELECT A.ID,A.NAME,B.KEY,B.VALUE FROM A,B WHERE A.ID=B.PID

SELECT A.ID,A.NAME,B.KEY,B.VALUE FROM A,B WHERE A.ID=B.PID=1

  • CREATE VIEW view_name AS
  • SELECT ID,NAME,
  • 'a' KEY_a,
  • ( SELECT VALUE FROM B Where KEY='a' AND PID=a.ID ) VALUE_a,
  • 'b' KEY_b,
  • ( SELECT VALUE FROM B Where KEY='b' AND PID=a.ID ) VALUE_b,
  • 'c' KEY_c,
  • ( SELECT VALUE FROM B Where KEY='c' AND PID=a.ID ) VALUE_c,
  • FROM A a
  • WHERE a.ID=1