MySQL查询仅基于第一行的列返回行

时间:2018-08-18 15:26:27

标签: mysql

对不起,标题很难在一行中解释,但是我正在执行一个查询,该查询可以根据第一行的结果为我提供所有行-一个示例将说明:

表看起来像这样

id | name | week
1     x      2
2     y      2
3     z      3

因此,基本上在不知道第一个week值的情况下,我只想要week = 2所在的那些行。换句话说,如果下一次运行,则第一个结果是week: 3,那么我只想要week = 3所在的行。

这全部取决于行的正确顺序-但这不是目的。

我考虑过要在两个查询中执行此操作,因为这是在某些php应用程序中进行的,其中第一个查询是

select week from table limit 1

因此,现在我们知道week的值可以简单地

select id, name, week from table where week = '2'

但是我发现有一个更聪明的方法可以在一个查询中执行此操作,只是不确定sql函数的外观如何。

希望如此。

1 个答案:

答案 0 :(得分:1)

通过您的脚步和思考,您可以做到

SELECT * FROM table WHERE week = (SELECT week FROM table LIMIT 1)

上面的方法应该可以正常工作(除非我误解了这个问题)。