在线高分求等答案

zhoubin5460 2011-10-26 10:17:22
目前有个表:table1 字段内容为:
ID TJNUM CZWT
2 00411042500001 轻度脂肪肝###急性咽峡炎###甘油三酯高###尿酸高###谷酰转肽酶 高
3 00311042500013 高血压###高尿酸血症###高脂血症###咽炎
4 00111042500037 左肾错构瘤
5 00711042500007 房室传导阻滞:
6 00911042500004 基本正常
7 00111042500039 体检正常
8 00911042500005 慢性咽炎
9 00111042500040 体检正常
10 00711042500009 碱性磷酸酶偏低:###胆固醇(CHOL)偏高:###血红蛋白浓度(HGB)偏低:
11 00111042600015 甲状腺轻度大
12 00711042600013 球蛋白偏高:###直接胆红素偏高:###甘油三脂(TG)偏高:
13 00411042600003 轻度脂肪肝###脾大###慢性咽炎###甲状腺功能低下###白蛋白高###球蛋白低
想查询结果以czwt值中的###来拆分字段:
例如:
00411042500001 轻度脂肪肝
00411042500001 急性咽峡炎
00411042500001 甘油三酯高
...全文
128 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ruyee365 2011-10-28
  • 打赏
  • 举报
回复
up
[Quote=引用 4 楼 opps_zhou 的回复:]
都是夜生活丰富的人
[/Quote]
中国风 2011-10-27
  • 打赏
  • 举报
回复
WITH table1 AS(
SELECT 2 id,'00411042500001' tjnum,'轻度脂肪肝###急性咽峡炎###甘油三酯高###尿酸高###谷酰转肽酶 高' czwt FROM dual UNION ALL
SELECT 3 id,'00311042500013' tjnum,'高血压###高尿酸血症###高脂血症###咽炎' czwt FROM dual UNION ALL
SELECT 4 id,'00111042500037' tjnum,'左肾错构瘤' czwt FROM dual UNION ALL
SELECT 5 id,'00711042500007' tjnum,'房室传导阻滞:' czwt FROM dual UNION ALL
SELECT 6 id,'00911042500004' tjnum,'基本正常' czwt FROM dual UNION ALL
SELECT 7 id,'00111042500039' tjnum,'体检正常' czwt FROM dual UNION ALL
SELECT 8 id,'00911042500005' tjnum,'慢性咽炎' czwt FROM dual UNION ALL
SELECT 9 id,'00111042500040' tjnum,'体检正常' czwt FROM dual UNION ALL
SELECT 10 id,'00711042500009' tjnum,'碱性磷酸酶偏低:###胆固醇(CHOL)偏高:###血红蛋白浓度(HGB)偏低:' czwt FROM dual UNION ALL
SELECT 11 id,'00111042600015' tjnum,'甲状腺轻度大' czwt FROM dual UNION ALL
SELECT 12 id,'00711042600013' tjnum,'球蛋白偏高:###直接胆红素偏高:###甘油三脂(TG)偏高:' czwt FROM dual UNION ALL
SELECT 13 id,'00411042600003' tjnum,'轻度脂肪肝###脾大###慢性咽炎###甲状腺功能低下###白蛋白高###球蛋白低' FROM dual
)
SELECT
tjnum,substr(czwt,l,instr(czwt||'###','###',l)-l) as czwt
from table1
,(SELECT LEVEL l FROM DUAL CONNECT BY LEVEL<=100)
WHERE substr('###'||czwt,l,3)='###'
order by ID
BenChiM888 2011-10-27
  • 打赏
  • 举报
回复

SELECT tjnum,REGEXP_SUBSTR(czwt,'[^#]+',1,L)
FROM table1,(SELECT LEVEL L FROM dual CONNECT BY LEVEL <= 100) t1
WHERE (LENGTH(czwt)-LENGTH(REPLACE(czwt,'#','')))/3+1 >= L
ORDER BY tjnum,L;

--测试
[SYS@orcl] SQL>WITH table1 AS(
2 SELECT 2 id,'00411042500001' tjnum,'轻度脂肪肝###急性咽峡炎###甘油三酯高###尿酸高###谷酰转肽酶 高' czwt FROM dual UNION ALL
3 SELECT 3 id,'00311042500013' tjnum,'高血压###高尿酸血症###高脂血症###咽炎' czwt FROM dual UNION ALL
4 SELECT 4 id,'00111042500037' tjnum,'左肾错构瘤' czwt FROM dual UNION ALL
5 SELECT 5 id,'00711042500007' tjnum,'房室传导阻滞:' czwt FROM dual UNION ALL
6 SELECT 6 id,'00911042500004' tjnum,'基本正常' czwt FROM dual UNION ALL
7 SELECT 7 id,'00111042500039' tjnum,'体检正常' czwt FROM dual UNION ALL
8 SELECT 8 id,'00911042500005' tjnum,'慢性咽炎' czwt FROM dual UNION ALL
9 SELECT 9 id,'00111042500040' tjnum,'体检正常' czwt FROM dual UNION ALL
10 SELECT 10 id,'00711042500009' tjnum,'碱性磷酸酶偏低:###胆固醇(CHOL)偏高:###血红蛋白浓度(HGB)偏低:' czwt FROM dual UNION ALL
11 SELECT 11 id,'00111042600015' tjnum,'甲状腺轻度大' czwt FROM dual UNION ALL
12 SELECT 12 id,'00711042600013' tjnum,'球蛋白偏高:###直接胆红素偏高:###甘油三脂(TG)偏高:' czwt FROM dual UNION ALL
13 SELECT 13 id,'00411042600003' tjnum,'轻度脂肪肝###脾大###慢性咽炎###甲状腺功能低下###白蛋白高###球蛋白低' FROM dual
14 )SELECT tjnum,REGEXP_SUBSTR(czwt,'[^#]+',1,L)
15 FROM table1,(SELECT LEVEL L FROM dual CONNECT BY LEVEL <= 100) t1
16 WHERE (LENGTH(czwt)-LENGTH(REPLACE(czwt,'#','')))/3+1 >= L
17 ORDER BY tjnum,L;

TJNUM REGEXP_SUBSTR(CZWT,'[^#]+',1,L
-------------- ------------------------------
00111042500037 左肾错构瘤
00111042500039 体检正常
00111042500040 体检正常
00111042600015 甲状腺轻度大
00311042500013 高血压
00311042500013 高尿酸血症
00311042500013 高脂血症
00311042500013 咽炎
00411042500001 轻度脂肪肝
00411042500001 急性咽峡炎
00411042500001 甘油三酯高
00411042500001 尿酸高
00411042500001 谷酰转肽酶 高
00411042600003 轻度脂肪肝
00411042600003 脾大
00411042600003 慢性咽炎
00411042600003 甲状腺功能低下
00411042600003 白蛋白高
00411042600003 球蛋白低
00711042500007 房室传导阻滞:
00711042500009 碱性磷酸酶偏低:
00711042500009 胆固醇(CHOL)偏高:
00711042500009 血红蛋白浓度(HGB)偏低:
00711042600013 球蛋白偏高:
00711042600013 直接胆红素偏高:
00711042600013 甘油三脂(TG)偏高:
00911042500004 基本正常
00911042500005 慢性咽炎

已选择28行。

opps_zhou 2011-10-27
  • 打赏
  • 举报
回复
都是夜生活丰富的人
yinan9 2011-10-27
  • 打赏
  • 举报
回复
都够牛叉的

3,490

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧