ale*_*lex 7 php mysql mysql-error-1235
这是我的原始查询......
SELECT `id`
FROM `properties`
LIMIT 10, 20
Run Code Online (Sandbox Code Playgroud)
该LIMIT条件是分页.
现在,我必须像以前一样得到所有,但我需要只有三分之一的行存在条件.
我想出了这个,只是LIMIT 30在我弄清楚如何做之前投入(总行数匹配/ 3)*2.
SELECT `id`
FROM `properties`
WHERE `id` NOT IN (SELECT `id`
FROM `properties`
WHERE `vendor` = "abc"
ORDER BY RAND()
LIMIT 30)
LIMIT 10, 20
Run Code Online (Sandbox Code Playgroud)
MySQL说......
1235 - 此版本的MySQL尚不支持'LIMIT&IN/ALL/ANY/SOME子查询'
我想我不能LIMIT在子查询中使用.
所以这是一个多问题但所有相关...
LIMIT子查询中是否有解决方法?OMG*_*ies 15
对不起,我迟到了,这对我有用:
SELECT p.id
FROM properties p
LEFT JOIN (SELECT t.id
FROM PROPERTIES t
WHERE t.vendor = 'abc'
ORDER BY RAND()
LIMIT 30) x ON x.id = p.id
WHERE x.id IS NULL
LIMIT 10, 20
Run Code Online (Sandbox Code Playgroud)
如果您的 MySQL 版本不支持,那么您有 2 个选择:
| 归档时间: |
|
| 查看次数: |
4925 次 |
| 最近记录: |