一个两张表连接查询的SQL语句!
item表(明细表):model(主键),name,info
tree表(结构表):id,model,num,pid
tree表就是通常的多级结构表(pid存放id),这里意思是有 num 个 model型号的物料组成上一级。
问题:
输入一个pid,查询该 id物料 由哪些 下级物料 组成,并列出 num,name,info
我的思路是:先查出
Select [model],[num] from [tree] where [pid]=" + PID ;
再根据model连接name info
新手,想不出怎么写。高手指教,谢谢。
BOM。。。
SQL code:
---------------------------
--就用树型表,可到N级.参考如下:
create table tb(id int, name varchar(10), pid int, px int)
insert into tb values(0 , '栏目分类', 0 , 1)
insert into tb values(1 , '动物' , 0 , 1)
insert into tb values(2 , '视频' , 0 , 2)
insert into tb values(3 , '老虎' , 1 , 1)
insert into tb values(4 , '狮子' , 1 , 2)
insert into tb values(5 , '搞笑' , 2 , 1)
go
--查询指定节点及其所有子节点的函数
CREATE FUNCTION f_Cid(@ID int) RETURNS @t_Level TABLE(ID int,Level int)
AS
BEGIN
DECLARE @Level int
SET @Level=1
INSERT @t_Level SELECT @ID,@Level
WHILE @@ROWCOUNT>0
BEGIN
SET @Level=@Level+1
INSERT @t_Level SELECT a.ID,@Level
from tb a,@t_Level b
WHERE a.PID=b.ID
AND b.Level=@Level-1
END
RETURN
END
GO
--调用函数查询id = 1及其所有子节点
SELECT a.* from tb a,f_
相关问答:
执行的顺序:
1)文件浏览框(选择文件使用)
选择好文件后
点击一个导入按钮的时候 ,把上面上传框里的csv文件以一个ID为文件名,上传到**/**文件夹下
2)读取这个文件夹下的csv的文件,转换成sql
3 ......
--drop table #T1
--drop table #T2
create Table #T1(ID int,
QueryID nvarchar(20),
ResultID1 nvarchar(20),
ResultID2 nvarchar(20))
create Table #T2(SortNo int,
QueryID nvarchar(20),
ResultID1 nv ......
一、7|3|1,8|6|1,3|1|1,16|1|1,5|7|1,9|7|1
二、6|3|1,7|3|1,8|6|1,2|1|1,3|1|1,16|1|1,4|7|1,5|7|1,9|7|1,10|7|1,11|4|1,12|4|1,13|4|1,14|5|1,15|5|1,17|0|1
怎样查询 一 在 二 里面并输出记录集。
SQL code: ......
入仓表:
日期 货品 数量
2009-12-01 aa 20
2009-12-03 aa 20
2009-12-04 bb 20
出仓表:
日期 货品 数量
2009-12-01 aa 10
2009-12-03 aa 10
结果表:
日期 ......