因此,我有两个表,第一个表有4个记录,第二个表包含两个记录。它们没有任何关系,只是希望它们以一种在图片上显示的方式在一起显示。

我知道可以通过计算他们的行号和使用这些来加入他们,但我很好奇是否有一种方法可以不使用变量来做同样的事情。谢谢你的建议,也很抱歉我的英语:)
发布于 2013-09-28 10:08:07
是的,有一种不使用变量的方法,就是stright SQL。
参见本演示:http://www.sqlfiddle.com/#!2/2eeb2/4
不幸的是,MySql没有实现像Oracle、Postgre和MySql这样的分析函数:
ROW_NUMBER() OVER (partition by ... order by ... )或像甲骨文那样的rownum伪of,以及在MySql中这样的查询性能都很差。
SELECT *
FROM (
SELECT emp.*,
(SELECT count(*)
FROM emp e
WHERE e.empno <= emp.empno
) rownum
FROM emp
) e
LEFT JOIN (
SELECT dept.*,
(SELECT count(*)
FROM dept d
WHERE d.deptno <= dept.deptno
) rownum
FROM dept
) d
ON e.rownum = d.rownum; https://stackoverflow.com/questions/19064881
复制相似问题