mysql不支持在子查詢(xún)中使用limit解決辦法
This version of MySQL doesn’t yet support ‘LIMIT & IN/ALL/ANY/SOME subquery’。
字面意思就是不支持在子查詢(xún)中使用limit關(guān)鍵字。
經(jīng)過(guò)搜索,找到了替代解決方法。
就是在limit的子查詢(xún)外層再加一層子查詢(xún)。
比如:
原先可能是報(bào)錯(cuò)的sql語(yǔ)句是:select * from cidy where id in (select id from cidy limit 0,10);
經(jīng)過(guò)修改的sql就是:select *from cidy where id in (select id from (select id from cidy limit 0,10));
經(jīng)過(guò)測(cè)試,修改過(guò)的sql語(yǔ)句執(zhí)行時(shí)報(bào)錯(cuò):Every derived table must have its own alias。
錯(cuò)誤的字面意思是:需要?jiǎng)e名
從上面的sql語(yǔ)句中可以看到,我們多加的一層sql不僅沒(méi)有別名更沒(méi)有表名,會(huì)不會(huì)在這里出問(wèn)題呢?測(cè)一下就知道了~
經(jīng)過(guò)修改后的sql語(yǔ)句就是:select *from cidy where id in(select id from(select id from cidy limit 0,10) as cd);
經(jīng)過(guò)測(cè)試,如我們所想,終于成功了。
分享促進(jìn)成長(zhǎng)

浙公網(wǎng)安備 33010602011771號(hào)