一个多表嵌套查询的sql语句
select batch_no "批次号",get_id "分类" from (
select(
select plan1.batch_no from product_plan plan1 where plan1.item_no=(select head1.product_code from wo_head head1 where head1.order_no =bbb)) batch_no,
(select decode(get_id,'BUY','外购件','MAK','自制件','MB','未定') from item where item_no= aaa) get_id
from (select req.item_no aaa,req.order_no bbb from process_req req where req.status_id='C'and req.order_no in(select head.order_no from wo_head head where head.batch_no in (select batch_no from product_plan) or head.product_code in ( select item_no from product_plan )))) order by qty desc
相关文档:
基本的Sql编写注意事项
尽量少用IN操作符,基本上所有的IN操作符都可以用EXISTS代替。
不用NOT IN操作符,可以用NOT EXISTS或者外连接+替代。
Oracle在执行IN子查询时,首先执行子查询,将查询结果放入临时表再执行主查询。而EXIST则是首先检查主查询,然后运行子查询直到找到第一个匹配项。NOT EXISTS比NOT IN效率 ......
现象:
用VS 2008打开VS 2005开发的报表后,会把报表单向升级到2008的shcema,不能再转回2005的schema.再发布到SQL Server 2005上时会报错:"无法升级的名称空间".
找到的解决办法:
在SQL Server 2005所在的机器上开发报表.
把SQL Server升级到 SQL Server 2008.
据说有Reporting Service 2008的单独安装版,可以 ......
一.名词解释:
0。SQL 结构化查询语言(Structured Query Language)
1。非关系型数据库系统
做为第一代数据库系统的总称,其包括2种类型:“层次”数据库与“网状”数据库
“层次”数据库管理系统 eg:IBM&IMS (Information Management System ......
很多时候,我们需要把数据库Sequence设置到某个特定的值开始,但是又不想重建这个Sequence 那下面的SQL语句就可以实现这样的功能: 其中user_seq是需要操作的Sequence名称,1 .. 100是递增100次 DECLARE
rowCount1 NUMBER;
BEGIN
FOR cc IN 1 .. 100
LOOP
SELECT user_seq.NEXTVAL INTO rowCount1 f ......