我有一个查询,可根据其标题从数据库中获取联系人。它会查找多个标题,并且如果同一查询返回了多个联系人,我希望它们按特定顺序排列。这就是我的意思:
这是表的示例:
id | name | title | email
-----+-----------+--------------------+------------------
1 | Bob | General Manager | [email protected]
2 | John | President | [email protected]
3 | Sue | Owner | [email protected]
我的查询是这样的:
SELECT * FROM tbl_contacts WHERE title IN ('General Manager', 'Owner', 'President')
如何使查询按特定顺序(或本例中标题的层次结构)返回结果?
我想要始终保持秩序的结果:
例如,如果该实体没有总经理,那么我仍然希望保持相同的层次结构并返回:
您要使用FIELD
功能。它返回搜索字符串在给定字符串集中的位置。
select *
from tbl_contacts
where title in ('General Manager', 'Owner', 'President')
order by field(title, 'General Manager', 'Owner', 'President')
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句