微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SQL在2页中显示相同的ID

如何解决SQL在2页中显示相同的ID

我在sql中有“用户”表。

id | name    | sex | looking4 | status | age 
---+---------+-----+----------+--------+-----
1  | omer    | 1   | 2        | 3      | 24
2  | yossi   | 1   | 3        | 3      | 26
3  | nitzan  | 2   | 1        | 3      | 25

性别:

1 - men
2 - girl

我有这个sql

SELECT id,name,city,age,birthday,sex,online
FROM `users` 
WHERE `active`='1' AND (`status` IN (7,8,9,109,110)) AND (`age` between 18 AND 55) 
AND  (`sex`='1' AND `looking4`='3') OR (`sex`='1' AND `looking4`='2') OR (`sex`='2' AND `looking4`='2') OR (`sex`='2' AND `looking4`='3') 
ORDER by online desc
LIMIT 10,10

问题: 我的网站显示重复的ID

User id 40 in page 1
User id 40 in page 2

如何解决我的SQL查询

解决方法

您的表数据缺少某些列。在线专栏中有什么?此外,表users中的主键是什么。也许您有重复的键是很自然的。

您应该问自己:我想显示什么数据?并且需要什么顺序?

尝试以下操作以查找有关重复项的更多信息:ORDER BY ID,online DESC

,

online听起来像一个标志。这意味着排序是不稳定。我建议添加一个额外的列,以使排序可重复:

order by online,id

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。