
SQL
amberwest
这个作者很懒,什么都没留下…
展开
-
xmlagg函数的使用--课表视图
需求将老师一周中同一大节的课表信息整理到同一条记录里,不同星期对应不同的列。(涉及到字符串拼接、行转列)常见的行转列函数有vm_concat、listagg、xmlagg等,但是oracle12g不支持vm_concat,而且前两个函数在拼接字符串的时候容易出现拼接结果过长、字符串缓冲区过小等问题,难搞。xmlagg就可以完美解决这个问题,拼接字段中出现null也不影响,唯一的不足就是多个null拼接时,xmlagg并不能自动省去,最后需要处理下多余的拼接符号,不然难看。xmlagg函数原创 2021-09-20 16:18:56 · 5913 阅读 · 0 评论 -
oracle多层嵌套后to_number比较数据出现无效数字的错误
select * from (selectXH ,--学号case when to_number(rxnj) <= 2020 - xz then '不在校'else '在校'end as zxzt --在校状态FROM xsxx where rxnj not in ('NULL',' ')) where zxzt='在校';在上述例子中,rxnj是varchar2类型,有非纯数字的数据值,xz是number类型,内层查询无报错,但是外层查询就会报错,也就是where条件不起作.原创 2021-09-20 15:56:12 · 1665 阅读 · 0 评论