我需要仅使用WHERE子句检索客户创建的第一条记录。我不能使用LIMIT,ORDER BY等。
SELECT *
FROM mytable
WHERE customer_id = 1
AND created = ? the earliest timestamp for that customer
编辑:预计会有人问,这是我正在使用的当前框架中特定案例的限制。别担心。我必须这样做。如果无法完成,请告诉我无法完成。
提前致谢。
Edit2:谢谢大家,但我也无法使用任何联接。还有更多想法,或者根本不能做到吗?
答案 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