日期:2014-05-17  浏览次数:20739 次

没碰到过的sql查询问题,求助
假如表a有以下3条记录:
a1,a2,a3
b1,b2,b3
c1,c2,c3
现在有3个日期(不是表的查询条件),我要查出以下的结果:
a1,a2,a3  日期1
a1,a2,a3  日期2
a1,a2,a3  日期3
b1,b2,b3  日期1
b1,b2,b3  日期2
b1,b2,b3  日期3
c1,c2,c3  日期1
c1,c2,c3  日期2
c1,c2,c3  日期3
以前没碰到过这个问题,求大侠们给个思路 
SQL 查询??求助

------解决方案--------------------
 自表 全连接
------解决方案--------------------
产生笛卡尔积就可以了
------解决方案--------------------
SELECT * FROM A,A;
------解决方案--------------------
引用:
都能具体点么?


SELECT O.* FROM A O CROSS JOIN A P;

SELECT O.* FROM A O,A P;
------解决方案--------------------
引用:
引用:引用:都能具体点么?

SELECT O.* FROM A O CROSS JOIN A P;

SELECT O.* FROM A O,A P;
我这个不是两个表的链接。



ChenZw> WITH A AS(
  2    SELECT 'A1' A,'A2' B,'A3' C FROM DUAL UNION ALL
  3    SELECT 'B1' A,'B2' B,'B3' C FROM DUAL UNION ALL
  4    SELECT 'C1' A,'C2' B,'C3' C FROM DUAL
  5  ),B AS(
  6    SELECT '日期1' FROM DUAL UNION ALL
  7    SELECT '日期2' FROM DUAL UNION ALL
  8    SELECT '日期3' FROM DUAL
  9  )
 10  SELECT * FROM A,B;

A  B  C  '日期
-- -- -- -----
A1 A2 A3 日期1
A1 A2 A3 日期2
A1 A2 A3 日期3
B1 B2 B3 日期1
B1 B2 B3 日期2
B1 B2 B3 日期3
C1 C2 C3 日期1
C1 C2 C3 日期2
C1 C2 C3 日期3

已选择9行。