这是我得到的带有表名照片的表:
photo_id user_id
401 1
403 1
405 1
407 2
408 1
409 2
410 1
411 3
412 2
413 2
420 2
423 2
我目前正在使用查询
SELECT *
FROM photos
WHERE user_id
IN ( 1, 2 )
LIMIT 0 , 6
里面的IDIN
可以有多个值而不仅仅是两个
我得到的是
photo_id user_id
401 1
403 1
405 1
407 2
408 1
409 2
没有每个 user_id 的比例值
我想要的是从两个 UserId 中获取相等比例的值。也就是说,如果获取限制为 6,那么我需要 3 个值,或者如果 1 和 3 个值中存在的元素少于 3 个,则我需要 3 个值,或者如果 2 中存在的元素少于 3 个,则我需要 3 个值
如果有 3 个用户 id 并且获取限制为 6;所有三个 id 的结果都将为 2
photo_id user_id
401 1
403 1
405 1
407 2
409 2
412 2
我可以在多个查询中做到这一点;但是有没有办法在单个查询中做到这一点?