【发布时间】:2011-05-30 08:56:29
【问题描述】:
我有两张桌子: T1:
| M_ID | P_ID1 | P_ID2 | rest of T1 columns |
| 0 | 0 | 1 | ... |
| 1 | 2 | 3 | ... |
T2:
| P_ID | Type | A | B |
| 0 | 1 | a | e |
| 1 | 2 | b | f |
| 2 | 1 | c | g |
| 3 | 2 | d | h |
现在,我想要一个选择这个的查询:
| M_ID | P_1a | P_1b | P_2a | P_2b | rest of T1 columns |
| 0 | a | e | b | f | ... |
| 1 | c | g | c | h | ... |
所以,用一句话来说:我想选择T1中的所有列,但是我想用T2中的列替换P_ID1,其中P_ID等于P_ID1,类型为1,与P_ID2基本相同。
显然,我可以通过多个查询获得所需的信息,但我想知道是否有一种方法可以通过一个查询来做到这一点。有什么想法吗?
我目前使用的是 SQL Server 2008r2,但我也对其他数据库软件的解决方案感兴趣。
感谢您的帮助!
【问题讨论】:
标签: sql sql-server-2008 sql-server-2008-r2