【发布时间】:2014-07-10 11:15:29
【问题描述】:
我到处搜索,但找不到任何解决方案,我需要在下面的 sql 语句中首先列出一个特定的城市,如“纽约”,我试图放置 按情况订购 City.name_en 当“纽约”时 1 ELSE 2 END ,City.name_en 在内部sql语句中但没有工作,有什么办法可以解决这个问题吗?
SELECT * FROM (
SELECT RTRIM(Organization.name_en) as '@name','flag.png' AS '@flag',
RTRIM(Country.name_en) as 'country',RTRIM(city.name_en) as 'city',Organization.id as 'OrganizationID',
ROW_NUMBER() OVER (ORDER BY sequence_num) AS RowNum
FROM Organization
LEFT JOIN City ON City.id = city_id
LEFT JOIN Country ON country.id = Organization.country_id
LEFT JOIN Industry ON Industry.id = Industry_id
WHERE
(industry_id =@industry_id OR Coalesce(@industry_id,'') = '')
AND (Organization.name_en LIKE '%' + @OrganizationName + '%' OR Coalesce(@OrganizationName,'') = '')
) AS SOD
WHERE SOD.RowNum BETWEEN ((@PageNumber-1)*@RowsPerPage)+1
AND @RowsPerPage*(@PageNumber)
FOR XML PATH('organization'), ROOT('organizations')
【问题讨论】:
标签: sql sql-server database sql-server-2005