SQL 是否可以根据匹配的条件对返回的行进行不同的排序?
例如,我的网页允许输入姓名或邮政编码。该查询当前按姓氏、名字排序。太好了,除非他们输入邮政编码,否则我想按邮政编码而不是姓名对结果进行排序。那可能吗?我希望这发生在同一个查询中,而不是两个。一个潜在的问题:如果输入的值与名称和 zip 都匹配怎么办?
谢谢!
伪查询:
SELECT firstName, lastName, zip
From Users
WHERE (FirstName LIKE 'search' OR LastName LIKE 'search' OR Zip LIKE 'search')
ORDER BY LastName, FirstName