【发布时间】:2017-02-01 05:49:06
【问题描述】:
我通过link 遇到了一个 MySQL 问题。在阅读了下面的答案(也可以在链接中找到)之后,我仍然没有得到它。有人可以为我解释一下这些步骤,尤其是子查询(SELECT @i := @i + 1 AS i, employee_id FROM employees)?提前致谢!
问题:
从员工表中获取偶数记录。
答案:
SET @i = 0;
SELECT i, employee_id
FROM (SELECT @i := @i + 1 AS i, employee_id FROM employees) a
WHERE MOD(a.i, 2) = 0;
【问题讨论】:
-
这会以不确定的方式获取“备用”记录,即数据集的一半。从任何意义上说,它们都不是“偶数”——尽管它们可能碰巧是!
-
我猜像这样草率的答案(被呈现为某种规范)部分解释了为什么不鼓励将该网站作为该网站上的资源。
标签: mysql sql database subquery