我不确定如何提供代码示例,因此我会尽我所能解释这一点。
我有一个表格列,可以显示用户的ID以及他们拥有的网站。每个客户端可以在表中有多行。
如果查询中有一定数量的行,是否可以为MySQL提供最少的行数来检索特定的ID?
所以说你全部选择10行,你能说"给我十行,至少有3行属于用户5,如果用户5没有3行行,只需从其他用户组成10个'行"
答案 0 :(得分:1)
除非我遗漏了什么,否则这是基于Marc B建议的查询:
SELECT * FROM
( (SELECT * FROM userWebSites WHERE userId = 5 LIMIT 10)
UNION
(SELECT * FROM userWebSites WHERE userId <> 5 LIMIT 10) ) AS Merged
LIMIT 10
但是,它总是返回相同的行,以便其他用户填满缺失的行。