Я пытаюсь расставить приоритеты для результатов в SQL Server 2008R2, но мне не удается расставить приоритеты для тех, которые мне нужны, сначала вверху.Например: если я запрашиваю город, штат и почтовый индекс, и у меня есть почтовый индекс, и он совпадает, я бы хотел, чтобы результат был наверху.Если почтовый индекс не соответствует, но город и штат соответствуют, я хотел бы, чтобы они были посередине, тогда, если совпадает только страна, результат может быть внизу
Если я пытаюсь использовать LIKEв порядке по выражению запрос не выполняется.Пока у меня есть:
DECLARE @cityState nvarchar = 'new york';
DECLARE @zip nvarchar = '11204';
DECLARE @myposition geography;
SELECT * FROM ZipCodes z
WHERE Zip LIKE @zip OR (City LIKE @cityState+'%' and State LIKE @cityState+'%' )
ORDER BY z.Zip LIKE @zip desc