有两个表
user表 id name idCompany
000001 张三 302000
000002 李四 301000company表idCompany name
100000 总公司
201000 **分公司
202000 **分公司
301000 **营业部
302000 **营业部
company表的idCompany编号规则为
100000(总公司)
201000(**分公司)第1位代表为分公司,23位为分公司代码
202000(**分公司)
301000(营业部)第1位代表为营业部,第23位为上级分公司的代码
302000(营业部)我现在要查这些信息出来
用户名,所属分公司,所属营业部不知这条SQL语句要怎样写
user表 id name idCompany
000001 张三 302000
000002 李四 301000company表idCompany name
100000 总公司
201000 **分公司
202000 **分公司
301000 **营业部
302000 **营业部
company表的idCompany编号规则为
100000(总公司)
201000(**分公司)第1位代表为分公司,23位为分公司代码
202000(**分公司)
301000(营业部)第1位代表为营业部,第23位为上级分公司的代码
302000(营业部)我现在要查这些信息出来
用户名,所属分公司,所属营业部不知这条SQL语句要怎样写
解决方案 »
- 如何将excel中的数据导入到oracle 数据库中
- 如何查询为空的数据?
- java调用存储过程的例子问题
- Ajax应用需要注意的事项
- 在本地oracle里建DBlink连接sqlserver可以么
- 求可用的oracle 10g中文版 下载地址,可用就给分
- 请问在Oracle中有无可视化开发界面。
- 请问我在包里自定义了数据类型,运行包的时候数据库为什么会自己断开?
- 视图创建是可以用group by语句吗?我建立的视图涉及较多的计算(含有sum),使得我的查询速度效率很低,我应该怎么办?视图可以建立索引
- 为什么我的SQL Explore里面不能正确的显示中文???
- oracle 汉字显示问题··
- 请教一条sql语句
substr(idcompany,1,3)='2'||substr(a.idcompany,2,2) ) as "所属分公司",b.name as "营业部"
from user a,company b where a.idcompany=b.idcompany;
张三 深圳分公司 深圳分公司你给的语句查出的是这种结果
from user a,company b1,company b2 where a.idcompany=b2.idcompany
and substr(a.idcompany,1,3)='3'||substr(b1.idcompany,2,2)
select a.name,b1.name as '所属分公司',b2.name as '营业部'
from user a,company b1,company b2 where a.idcompany=b2.idcompany
and substr(a.idcompany,1,3)='3'||substr(b1.idcompany,2,2) and substr(b1,1,1)='2'
select a.id,a.name,b1.name as '所属分公司',b2.name as '所属营业部'
from user a,company b1,company b2
where a.idCompany=b2.idCompany and substr(a.idCompany,2,2)=substr(b1.idCompany,2,2);
这个我不懂,那位能解释一下
from user a,company b1,company b2 where a.idcompany=b2.idcompany
and substr(b2,1,1)='3'and substr(b1.idcompany,2,2)=substr(b2.idcompany,2,2) and substr(b1,1,1)='2'
ID varchar2(8),
NAME varchar(20),
IDCOMPANY varchar(8))INSERT INTO USER1 VALUES('000001','张三','302000')INSERT INTO USER1 VALUES('000002','李四','301000')create table company(
IDCOMPANY VARCHAR(8),
NAME VARCHAR(20))INSERT INTO company VALUES('100000','总公司')INSERT INTO company VALUES('201000','广东分公司')INSERT INTO company VALUES('202000','深圳分公司')INSERT INTO company VALUES('301000','xxx营业室')INSERT INTO company VALUES('302000','yyy营业室')select * from user1select * from companyselect a.name,b1.name 所属分公司,b2.name 所属营业部
FROM user1 a,company b1,company b2
where a.idcompany=b2.idcompany
and substr(b2.idcompany,1,1)='3'
and substr(b1.idcompany,2,2)=substr(b2.idcompany,2,2)
and substr(b1.idcompany,1,1)='2'通过调试了,
这个才是正确的
substr(a.idcompany,1,3)='3'||substr(b1.idcompany,2,2)
这个我不懂