永发信息网

pl/sql中取重复记录中的一条记录怎么写?

答案:3  悬赏:30  手机版
解决时间 2021-01-30 00:35
  • 提问者网友:战皆罪
  • 2021-01-29 20:54
以下是我代码:
select a.id,a.hm,b.cdsc_id,b.cdsc_name,b.cdsc_eff_dt
from nb_qq3 a
left join qj_taocan b
on a.hm = b.asset_row_id

得出查询表
ID HM CDSC_ID CDSC_NAME CDSC_EFF_DT

1 1-11Q 72364 T-2-3 2012-12-25

1 1-11Q 72364 T-2-3-加 2012-12-24

2 1-117 76161 T-1-1 2012-12-24

2 1-117 76161 T-1-1-副 2012-12-24

3 1-1RE 761916 Q-3-5 2012-12-24

4 1-11P 719113 D-4-5 2012-12-24

5 1-1OA 761916 V-6-5 2012-12-14

能帮我想两条语句取到的结果是唯一的值吗?
1、选择条件为cdsc_eff_dt距离现在时间近的一条记录(可以忽略之前的记录内容);
2、选择条件为cdsc_name中带有"加"或者“副”的记录(可以忽略后面的时间);
十分感谢!
最佳答案
  • 五星知识达人网友:你哪知我潦倒为你
  • 2021-01-29 21:15

SELECt DISTINCT(ID),* FROM XXX ORDER BY cdsc_eff_dt DESC

SELECt * FROM XXX WHERe CHARINDEX('加',CDSC_NAME) > 0

SELECt * FROM XXX WHERe CHARINDEX('副',CDSC_NAME) > 0

第一个不知道对不对哦!!!
全部回答
  • 1楼网友:妄饮晩冬酒
  • 2021-01-29 22:56
1、 select * from xxx where xxx in(select max(xxx) from xxx) and rownum=1 2、 select * from xxx where xxx like '%加%' or xx like '%副%'
  • 2楼网友:行路难
  • 2021-01-29 21:52
substr(b,1,1)试试 很久没接触pl/sql了 都忘的差不多了 lz再找找看有没有类似的函数 subbit()???
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯