Matrix加入SQL?

时间:2015-04-15 22:12:16

标签: mysql sql sql-server database

我有两个Table对象和属性

objects
   id (integer)
   name (string)

attributes
   idd (integer)
   value (string)

这些价​​值观:

1,A
2,B
3,C

1,X
2,Y
3,Z
4,P
5,Q

我想得到这个:

ID | IDD | Value
1 | 1 |X
1 | 2 |y
1 | 3 |Z
1 | 4 |P
1 | 5 |Q
2 | 1 |X
2 | 2 |y
2 | 3 |Z
2 | 4 |P
2 | 5 |Q
3 | 1 |X
3 | 2 |y
3 | 3 |Z
3 | 4 |P
3 | 5 |Q

它只是一个Cross连接在不同的表中,这是最好的方法

2 个答案:

答案 0 :(得分:4)

喜欢@Farhęg说...

select a.ID, b.* from objects a
cross join attributes b
order by a.ID, b.Idd

答案 1 :(得分:1)

http://sqlfiddle.com/#!9/124a3/1

SELECT o.id, a.idd, a.value
FROM attributes a
LEFT JOIN objects o
ON 1