在mysql中按日期交叉连接

时间:2016-03-10 07:49:34

标签: mysql cross-join

我想按日期交叉加入(自我加入?)例如:

如果我有一张像这样的表:

Date   Number    
0307   A    
0307   B    
0328   C    
0401   A    
0401   B    
0519   A    
0519   C    
交叉加入后我想要的是:

Date    Number  Number        
0307    A       A    
0307    A       B    
0307    B       A    
0307    B       B    
0328    C       C    
0401    A       A    
0401    A       B    
0401    B       A    
0401    B       B    
0519    A       A    
0519    A       C    
0519    C       A    
0519    C       C        

我该怎么办?

谢谢

2 个答案:

答案 0 :(得分:1)

所以你想要一个正常的内连接:

SELECT t.date,t.number,s.number
FROM YourTable t
INNER JOIN YourTable s
 ON(t.date = s.date)

答案 1 :(得分:1)

试试这个:

SELECT * 
FROM tbl t1 INNER JOIN tbl t2 USING(`Date`);