我有类似的一段sql文
SELECT *
FROM kmu.D_SEISEKI_KOGI
WHERE (GAKUSEKI_NO IN ('2004024', '2004011'))我想按照 IN语句里面的顺序进行排序 有什么好方法吗?
结果希望是
2004024
2004011
SELECT *
FROM kmu.D_SEISEKI_KOGI
WHERE (GAKUSEKI_NO IN ('2004024', '2004011'))我想按照 IN语句里面的顺序进行排序 有什么好方法吗?
结果希望是
2004024
2004011
解决方案 »
- sql server 2008 r2 报 17884 错误
- 自增自断,怎么能够更新?
- 大家讨论下:怎么设计一个数据库的表有更大的灵活性和通用性和可扩展性
- 如何按日期按天生成单据编号
- ado读取数据库值错误
- SQL2000数据库到SQL2005 访问问题
- 因为文件组primary已满
- 请问用jdbc连接sql server 2000的问题?
- 求救:nvarchar(或varchar)字段的值中含有n个换行,如何在取一批记录时将换行去掉并返回?真的急!急急!急急!急
- 急!请问如何在误删除数据库的log文件后修复数据库?(sql server7.0)
- 用一条sql语句将上面表的数据以下面表的形式显示,请老大们指点
- 偶才学数据库,谢谢帮我解答!
FROM kmu.D_SEISEKI_KOGI
WHERE (GAKUSEKI_NO IN ('2004024', '2004011'))
ORDER BY CHARINDEX(GAKUSEKI_NO, '2004024', '2004011')
FROM kmu.D_SEISEKI_KOGI
WHERE GAKUSEKI_NO ='2004024' union all
SELECT *
FROM kmu.D_SEISEKI_KOGI
WHERE GAKUSEKI_NO ='2004011'
FROM kmu.D_SEISEKI_KOGI
WHERE (GAKUSEKI_NO IN ('2004024', '2004011'))
--添加
order by convert(int,GAKUSEKI_NO) desc
SELECT *
FROM kmu.D_SEISEKI_KOGI
WHERE (GAKUSEKI_NO IN ('2004024', '2004011'))
ORDER BY CHARINDEX(GAKUSEKI_NO, '2004024', '2004011')
--------------------------------------------------------------
改成如下
SELECT *
FROM kmu.D_SEISEKI_KOGI
WHERE (GAKUSEKI_NO IN ('2004024', '2004011'))
ORDER BY CHARINDEX(GAKUSEKI_NO, '2004024,2004011')
GAKUSEKI_NO,*
FROM
kmu.D_SEISEKI_KOGI
WHERE
(GAKUSEKI_NO IN ('2004024', '2004011'))
order by GAKUSEKI_NO desc
FROM kmu.D_SEISEKI_KOGI
WHERE (GAKUSEKI_NO IN ('2004024', '2004011'))
ORDER BY CHARINDEX(GAKUSEKI_NO, '2004024,2004011')
order by case when GAKUSEKI_NO='2004024' then 0 when GAKUSEKI_NO='2004011' then 1 end