这是我的 table :
我想从特定区域获取默认的 5 条记录(如果存在),否则任何默认记录,如果存在 2 条记录,则随机需要获取 3 条记录。如果有 4 个,那么 1 个是随机的。例如,如果我尝试获取 mumbai
,那么前 2 个是“mumbai”,另外 3 个是从表中获取的任何随机记录。假设我想按 'washington' 获取,那么没有记录,因此需要随机获取所有 5 条记录。
那么我该怎么做呢?
希望你明白我想说的。如果没有的话你可以问我。
谢谢。
最佳答案
您可以使用订单和限制。像这样的事情:
select *
from your_table
order by case when area = 'mumbai' then 1 else 2 end
limit 5;
上面的 case 表达式会将给定区域保留在顶部,其他区域保留在顶部。 limit 5 子句将选择前 5 个有序行。
关于php - 如果存在则选择值,否则加载默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42840631/