用于优先级逻辑的Oracle SQL查询

时间:2017-08-07 03:36:37

标签: sql oracle

查询需要写入以下内容:
优先级排序逻辑1:
L / M
N / O
优先级排序逻辑2:
 如果身份证号码1和身份证号码2都是L / M,那么身份证号码1的优先权为  如果身份证号码1和身份证号码2中的N / O,则身份证号码1优先于 例如:
ID号1 ID号2预期输出 L1234589O L8906565I L1234589O N5896812I L1234353K L1234353K

现在,我必须编写查询

插入lmno_extract_stg值(regexp_like(idnumber1,'^ [LMNO] [0-9] {7} [A-Z] $','i'的情况) 然后idnumber1 else idnumber2 end);

此查询无法正常运行。并始终将ID号1作为优先事项。

请帮忙

1 个答案:

答案 0 :(得分:1)

如果它一直给你id_number1,它只是意味着它每次匹配你的正则表达式'^[LMNO][0-9]{7}[A-Z]$'。检查你的数据。

你的正则表达式意味着:

  1. 第一个字母是L或M或N或O
  2. 然后你有7个数字
  3. 然后是一个大写字母