好吧,所以我有一张桌子上摆满了客户“推荐书”.有些标记为10,其他标记为5(来自不同来源)
我的表格包含以下字段:
id (int 4 ) AI Pri Index
headline varchar 255
content text
source varchar 55
score double
所以我的问题是:
SELECT * from testimonials WHERE score > 8 ORDER BY rand()
这对我10分中得到的主要证言非常有效,但是现在我有了一个标记为5的新套装,我需要设计一种新方法来将它们拉出来并将它们混合在一起.
到目前为止,我已经删除了分数> 8子句,并在我的脚本中添加了一个SWITCH限制子句,以删除< 8 for source 1,< 3为source2.
这些现在按DESC顺序显示,但我希望整个批次是随机的,或者至少在结果中将source1和source2混合在一起.
我更愿意在查询中完成所有这些…
有任何想法吗?
解决方法:
SELECT * from testimonials WHERE score > 8 OR (source = 'source2' AND score > 3) ORDER BY rand()
这选择分数> 8为source1和>您的SWITCH说明建议将3作为source2.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。