1. 程式人生 > >Mysql子查詢用limit

Mysql子查詢用limit

執行帶有Limit子查詢是有問題的:

  SELECT * FROM task_and_device  WHERE  job_id IN
			   (SELECT id FROM wx_device_task_job WHERE user_id=79269 AND STATUS=1 ORDER BY last_updated DESC LIMIT  20  OFFSET 0)

報瞭如下的錯誤:

錯誤碼: 1235
This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'

需要再加上一層select才能成功:

  SELECT * FROM task_and_device  WHERE  job_id IN
			  (	
			  SELECT A.id FROM
			  (
			  SELECT id FROM wx_device_task_job WHERE user_id=79269 AND STATUS=1 ORDER BY last_updated DESC
			  LIMIT  20  OFFSET 0
			  ) AS A
			  )