请教各位,这个sql怎么拼,我的字段(code)规则是:备案事项[2014]1,前面中文是固定的,然后是括起来的年份(可能是2013,2014,2015等等),后面是流水号(从1,2,3,...,10,..递增的),我想查出所有2013年的数据,要求按后面的流程号数字倒叙排列。恳求大神帮忙,谢谢!
1条回答
- 黑暗夜色 2014-01-16 01:57关注
假设字段名是code
SELECT code, substr(code,INSTR(code,'[', 0, 1)+1,INSTR(code,']', 0, 1)-1) AS year,
to_number(substr(code, INSTR(code,']', 0, 1))) AS num
FROM table
WHERE year = '2013'
ORDER BY num DESC
试试这个 没调试过
自己看看
year是根据[]的位置截断得到年份
然后把]后面的截断得到流水号 因为位数不一样 所以排序的时候需要转换成数字
思路就是这样ps:虽然之前有说前面的文字是固定的 不过个人觉得还是根据格式判定的好 顺便学习这个编写的思路
解决 无用评论 打赏 举报
悬赏问题
- ¥15 cgictest.cgi文件无法访问
- ¥20 删除和修改功能无法调用
- ¥15 kafka topic 所有分副本数修改
- ¥15 小程序中fit格式等运动数据文件怎样实现可视化?(包含心率信息))
- ¥15 如何利用mmdetection3d中的get_flops.py文件计算fcos3d方法的flops?
- ¥40 串口调试助手打开串口后,keil5的代码就停止了
- ¥15 电脑最近经常蓝屏,求大家看看哪的问题
- ¥60 高价有偿求java辅导。工程量较大,价格你定,联系确定辅导后将采纳你的答案。希望能给出完整详细代码,并能解释回答我关于代码的疑问疑问,代码要求如下,联系我会发文档
- ¥50 C++五子棋AI程序编写
- ¥30 求安卓设备利用一个typeC接口,同时实现向pc一边投屏一边上传数据的解决方案。