2014-03-29 90 views
0

我需要帮助为我的数据库表编写正确的SQL查询。 现在我有两个简单的表:对象和子集合的SQL查询

my objects description

这可能吗?

+0

我几乎可以肯定,这是不可能 – Saeed

+1

请告诉我数据库?还有,我希望你没有工作太辛苦你试图查询。 – Mihai

+0

数据库是MS SQL。 Mihai,你的SQL查询无效 - 关键字'CASE'附近的语法不正确 – Oblomingo

回答

0
SELECT mainobjectid,name, 
MAX(CASE WHEN ColumnNAme='ColumnName1' THEN ColumnContent ELSE 0 END)as ColumnName1, 
MAX(CASE WHEN ColumnNAme='ColumnName2' THEN ColumnContent ELSE 0 END)as ColumnName2, 
MAX(CASE WHEN ColumnNAme='ColumnName3' THEN ColumnContent ELSE 0 END)as ColumnName3 
FROM t1 JOIN t2 
ON t1.mainobjectid=t2.mainobjectid 
GROUP BY t1.mainobjectid 

应该适用于大多数流行的数据库。

+0

数据库是MS SQL。 Mihai,你的SQL查询无效 - 关键字'CASE'附近的语法不正确 – Oblomingo

+0

@Oblomingo缺少逗号,请重试。 – Mihai

+0

好吧,现在它正在工作。但我不知道ColumnName值,是否有可能动态获取它? – Oblomingo