我的OFFSET mysql出了什么问题?

时间:2016-01-20 22:35:30

标签: php mysql

我不知道我做错了什么。在下面的示例表中,我正在尝试从id开始获取蓝色colornumber 4的id。所以我使用偏移,但它没有回显:

SELECT id FROM table_name WHERE color =blue AND number=4 ORDER BY id LIMIT 8 OFFSET 2

如果我删除number=4,那么一切都很好:

SELECT id FROM table_name WHERE color =blue ORDER BY id LIMIT 8 OFFSET 2

如何解决这个问题?感谢

我的表

id | color | number
-------------------
1  | blue  | 4
2  | blue  | 3
3  | blue  | 5
4  | blue  | 4
5  | blue  | 2
6  | blue  | 4
7  | blue  | 3
8  | blue  | 4

1 个答案:

答案 0 :(得分:1)

将您的颜色列与字符串值进行比较,例如'蓝色'

SELECT id FROM table_name WHERE color ='blue' AND number=4 ORDER BY id LIMIT 8 OFFSET 2

编辑:此外,如果你有两行或更少将由where子句返回,你将不会得到任何偏移量为2的行,因为偏移将跳过第一行两个结果。根据您发布的数据情况并非如此,但如果您使用的数据与您在此处发布的数据不同,这可能会解释您所看到的内容。