第一步:创建语法


CREATE TABLE OLIVER_MAP(ID INT,COM_TYPE VARCHAR(100),COM_NAME VARCHAR(100),SR_UP DECIMAL(18,2),

SR_LIM DECIMAL(18,2),RES VARCHAR(100));

INSERT INTO OLIVER_MAP(ID,COM_TYPE,COM_NAME,SR_UP,SR_LIM,RES)

VALUES(1,'A1','A类小型公司',3000000,NULL,'AS');

INSERT INTO OLIVER_MAP(ID,COM_TYPE,COM_NAME,SR_UP,SR_LIM,RES)

VALUES(2,'A2','A类小型公司',3000000,NULL,'AS');

INSERT INTO OLIVER_MAP(ID,COM_TYPE,COM_NAME,SR_UP,SR_LIM,RES)

VALUES(3,'B1','B类大型公司',100000000,NULL,'BB');

INSERT INTO OLIVER_MAP(ID,COM_TYPE,COM_NAME,SR_UP,SR_LIM,RES)

VALUES(4,'B2','B类大型公司',100000000,NULL,'BB');

INSERT INTO OLIVER_MAP(ID,COM_TYPE,COM_NAME,SR_UP,SR_LIM,RES)

VALUES(5,NULL,null,null,NULL,'O');

第二步:创建测试数据进行测试

CREATE TABLE OLIVER_01(ID INT,COM_TYPE VARCHAR(100),SR DECIMAL(18,2),YQFL VARCHAR(10));

INSERT INTO OLIVER_01 VALUES(1,'A1',30000000,'O');

INSERT INTO OLIVER_01 VALUES(2,'A2',30000000,'O');

INSERT INTO OLIVER_01 VALUES(3,'B1',100000000,'BB');

INSERT INTO OLIVER_01 VALUES(4,'B2',100000000,'BB');

INSERT INTO OLIVER_01 VALUES(5,'C',100000000,'O');

INSERT INTO OLIVER_01 VALUES(6,'A1',NULL,'O');

INSERT INTO OLIVER_01 VALUES(7,'A2',NULL,'O');

INSERT INTO OLIVER_01 VALUES(8,'B1',NULL,'O');

INSERT INTO OLIVER_01 VALUES(9,'B2',NULL,'O');

INSERT INTO OLIVER_01 VALUES(10,'A1',30000001,'O');

第三步骤:查询结果

SELECT T.*

,(SELECT RES FROM OLIVER_MAP A

WHERE (A.COM_TYPE IS NULL OR A.COM_TYPE=T.COM_TYPE)

AND (A.SR_UP IS NULL OR A.SR_UP>=T.SR)

 AND (A.SR_LIM IS NULL OR A.SR_LIM<T.SR)

 ORDER BY A.ID FETCH FIRST ROW ONLY) AS RES

FROM OLIVER_01 T

OLIVER_01表数据

映射表数据

查询结构

该案例适用于存在映射表,然后根据映射表匹配得出结果!

最新文章

  1. 快速入门MySQL教程【转自:http://xpleaf.blog.51cto.com/9315560/1712821】
  2. Idea创建Maven项目
  3. .NET 4.5 中新提供的压缩类
  4. iOS后台挂起程序 当程序到后台后,继续完成Long-Running Task 任务
  5. null 和 NULL 判断
  6. struts2是如何加载相关的package元素节点信息的
  7. .NET面试题解析(05)-常量、字段、属性、特性与委托
  8. [转载]在SQL Server 中,如何实现DBF文件和SQL Server表之间的导入或者导出?
  9. MFC编程入门之十七(对话框:文件对话框)
  10. JQuery Jsonp 跨域
  11. BUAA1389愤怒的DZY(最大值最小化)
  12. jQuery与DOM相互转换
  13. Java文件编码格式转换
  14. linux 定时器编程实例(完善中).....
  15. 手把手教你自动生成Makefile
  16. Linux 内核链表
  17. 基础5.jQuery常用事件
  18. IAR project build with command line
  19. webRTC中音频相关的netEQ(一):概述
  20. mybatis框架(4)---输入输出映射

热门文章

  1. centos 安装使用smb
  2. AUTOIT3设置用户包含目录
  3. Linux下Tcpdump使用
  4. java基础练习 13
  5. Java定义bean实体类中的变量时变量名的问题
  6. 如何在natTable表格上添加双击事件
  7. Git 使用指南(cmd + gui)
  8. DB2 触发器的写法及表主键结构的修改
  9. AC日记——[Wc2008]游览计划 bzoj 2595
  10. (15)C#集合