我有一个SQL查询获得第一个40 users.I我想要检索一个用户总是在列表中。是他们的任何方法在查询指定用户ID与极限如何获取特定的行始终在MySQL查询与限制
回答
我想这将是
(SELECT * from users limit 39)
UNION ALL
(SELECT * from users where userid='your-user-id')
这只会选择具有该ID的用户 – 2012-07-09 08:33:33
因此,“总是在该列表中检索一个用户”。这不意味着这种方式?这意味着其他39个用户(other-user-id)+ 1个特定用户id-always-there? – sel 2012-07-09 08:35:56
我相信OP希望选择40个用户,并且始终将特定用户作为该选择的一部分。此查询将只会选择具有指定ID – 2012-07-09 08:37:44
Select * from table order by userd_id limit 40
我能想到的最好的办法是:
SELECT * FROM tbl WHERE userid='your-user-id' UNION SELECT * FROM tbl WHERE userid!='your-user-id' LIMIT 39
基本上,您选择您的用户,然后选择其他39个用户。您使用UNION结合两个SELECT结果。
SELECT
*
FROM
`users`
WHERE
`user_id` != 12345
LIMIT 39
UNION SELECT
*
FROM
`users`
WHERE
`user_id` = 12345
ORDER BY `user_id`
;
这会给你第39个用户和user_id = 12345的用户。
如果'user_id = 12345'在前39行中,这样就会冒风险39行... – DaveRandom 2012-07-09 08:48:24
@DaveRandom你说得对!我现在改变了它。谢谢 :) – Zagor23 2012-07-09 08:52:00
由于大部分的选项都已经提供,检查这可以帮助你
select name from user_details where id = user_id || id != user_id order by field (id,user_id) desc limit 40;
这会给你,如果你希望你指定的用户ID将总是在最前面结果相结合&。
- 1. Mysql查询获取SUM()特定行吗?
- 2. mysql查询获取特定行
- 3. 如何限制查询结果与MySQL
- 4. 如何使用限制查询获取特定ID的多个记录
- 5. 如何使特定的查询在MySQL
- 6. 限制 - mysql查询
- 7. 包含:获取特定起始点/终点的特定词
- 8. MySQL的子查询限制
- 9. MySQL查询为多对多与限制
- 10. MySQL查询与秩序和限制
- 11. 如何限制mysql的查询,并限制它的时间戳?
- 12. 如何限制MySQL距离查询
- 13. 如何在MySQL查询结果中查找特定行?
- 14. 如何将查询限制在特定日期
- 15. 如何在mysql中查询后获取原始数据?
- 16. 使用相同的查询获取MySQL的总数限制?
- 17. Mysql查询结合两个有序查询与限制开始计数
- 18. 获取与独特价值的行中特定的列 - MySQL的
- 19. 如何限制对基于LAMP的CMS使用特定查询
- 20. 如何查询特定VARCHAR字段的长度/值限制?
- 21. 在mysql查询中获取锁定表
- 22. MySQL查询用于获取独特和
- 23. mysql - 在子查询中获取多行
- 24. mysql查询在特定日期之间获取记录
- 25. MySQL查询:限制联接
- 26. MySQL - 限制(强制)为任何查询返回的行数
- 27. 如何获取AI的MySQL查询?
- 28. MySQL空间查询始终为空
- 29. 如何从终端获取网页源代码的特定行?
- 30. 限制查询以获取具有特定指针的所有项目(JavaScript - Parse.com)
我想你需要使用'UNION'! – Rikesh 2012-07-09 08:39:17