This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery' 解決辦法


背景:mysql5.1.36,mybatis

前言:為了解決一對多,分頁顯示,但是前端主要是顯示的一的一方的數據和(多方的某個字段拼接在一起),此時的limit不能直接跟在查詢的后面,需要用子查詢把需要符合條件的一方得id先查詢出來,在子查詢里面用limit   就好比下面的截圖,組員姓名拼接在一起的

言歸正傳,我使用的這個版本mysql是不支持在子查詢中使用limit分頁查詢的。有點蛋疼

這樣寫: select id from table where id in ( select t.userId from user limit 10) ,就會報下面那個錯誤

This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'  :這個版本的mysql不支持子查詢中使用limit

參考了萬能的網友:

解決方案如下:再加一層子查詢。。。

select id from table where id in (select userId from ( select t.userId from user limit 10) tt)

這樣就解決了這個問題

后記:其實當時我看到這個問題,我第一反應是修改實現方案,沒想到去網上找解決方案,自己只是隨意Google了下,沒想到解決起來這么簡單,所以說啊,有時候有問題多問問Google或者百度!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM