求一条SQL
create table NODE
(
NODECODE CHAR(8) not null,
NODENAME VARCHAR(100) not null,
NODEWITH CHAR(8)
);
/*
NODE 是网点表:NODECODE网点编号,VARCHAR网点名,NODEWITH 属于那个网点
*/
insert into node values( '00000000','总部',null);
insert into node values( '00000001','广东分公司','00000000');
insert into node values( '00000002','四川分分公司','00000000');
insert into node values( '00000005','云南分分公司','00000000');
insert into node values( '00000003','广州办事处','00000001');
insert into node values( '00000004','成都办事处','00000002');
insert into node values( '00000006','昆明办事处','00000005');
create table USERORDER
(
NODECODE CHAR(8),
USERCODE CHAR(8),
DEALRATE INTEGER
);
/*
USERORDER 订单审核人表:NODECODE网点编号(与NODE表的NODECODE关联),USERCODE用户编号,DEALRATE 等级
*/
insert into USERORDER values( '00000000','A1',1);
insert into USERORDER values( '00000001','B1',1);
insert into USERORDER values( '00000001','B2',2);
insert into USERORDER values( '00000002','C1',1);
insert into USERORDER values( '00000002','C2',2);
insert into USERORDER values( '00000003','D1',1);
insert into USERORDER values ('00000004','D2',1);
insert into USERORDER values( '00000006','F1',1);
/*
我要的结果是订单审核的几种线路
比如:广东分公司的订单是让 D1 B1 B2 A1 按顺序审(B1 B2同一级,B2等级数据高一点,所以B1在B2前)
云南公公司在分公司时没有人,所以就只有总部与办事处审核
结果是: D1 B1 B2 A1
D2 C2 C1 A1
F1 A1
*/
drop table node;
drop table USERORDER;
...全文
相关推荐
高频HIVE-SQL笔试题详解(一).docx
这个问题的解决思路是,首先使用lag函数判断每条记录与其相邻的记录之间是否连续,然后使用窗口函数lead获取每一条记录的往后第2条记录的日期,并与本条记录日期求差值。
SQL语言综合练习.doc
知识点6: 求最高成绩。* SQL语句:`SELECT MAX(Grade) FROM SC;`* 解释:使用聚合函数MAX来计算最高成绩。知识点7: 求平均成绩。
分组后分组合计以及总计SQL语句(稍微整理了一下)
**分组后其他复杂的统计需求** - 分组后求最大值或最小值: ```sql SELECT 分组字段, MAX(日期字段) FROM 表 GROUP BY 分组字段 ``` - 获取分组内的第一条或最后一条记录
SQL Server笔试题(Sql2000常见笔试题)
- **删除记录**:DELETE FROM 用于从表中删除一条或多条记录。
数据库上机实验报告——SQL语言
**查询数据**:实验涵盖了多种SQL查询语句,包括: - 求供应工程`J1`的供应商号码:使用`SELECT DISTINCT sno FROM spj014 WHERE jno='j1'`。


基础和管理
