仅使用WHERE子句检索第一个记录

时间:2012-07-24 16:34:07

标签: mysql

我需要仅使用WHERE子句检索客户创建的第一条记录。我不能使用LIMIT,ORDER BY等。

SELECT *
FROM mytable
WHERE customer_id = 1
  AND created = ? the earliest timestamp for that customer

编辑:预计会有人问,这是我正在使用的当前框架中特定案例的限制。别担心。我必须这样做。如果无法完成,请告诉我无法完成。

提前致谢。

Edit2:谢谢大家,但我也无法使用任何联接。还有更多想法,或者根本不能做到吗?

3 个答案:

答案 0 :(得分:1)

SELECT * 
FROM mytable 
WHERE customer_id = 1 AND created IN (
    SELECT min(created) AS MinCreated
    FROM mytable
    WHERE customer_id = 1
)

答案 1 :(得分:0)

...AND created = MIN(SELECT timestamp FROM mytable)这有效吗?

答案 2 :(得分:0)

您可以使用,

select * from mytable where customer_id = 1
  AND (select count(*) from mytable) <=1