• 全部
  • 基础类
  • 应用实例
  • 新技术前沿

麻烦帮忙看看这些考试题,谢谢!

zenggk 2008-03-10 03:55:30
试题——4、返回表Yhdang中条件为字段Bml以字符串“一局”打头的所有记录,返回字段为dh,bml(字段类型均为Varchar(8))


试题——1、将Hdmx200605表中所有记录插入到Hdmx表(Hdmx表已存在且与hdmx200605表结构完全一致)中,插入时仅考虑字段Dh,Hssj,Thsc,Zjjx,其他字段均按默认值即可:


试题——2、有两个数据表T1,T2都有关键字段Yhmc(用户名称)。从T1表中查询在T2表中不存在的所有用户记录(包含所有字段)

试题——3、如果表Hthhf中不存在hf> 0的记录,就将该表删除

试题——4、表Yhdang及Hdmx200605均有字段Dh(varchar(8))及字段HfAdd(Money)要求按Dh的对应关系,更新表Yhdang表,使Yhdang表中的HfAdd等于对明细表Hdmx200605按字段 Dh分组求和后的字段Hfhj的值


试题——5、数据库Tel_Old和数据库Tel_New都有结构完全一样表Yhdang,现要把Tel_Old的 Yhdang里的数据导入Tel_New的Yhdang,要求至少写出两种导入方法

试题——6、用一条SQL语句创建一张结构和Yhdang一样的表Yhdang_tmp,但事先并不知道表Yhdang的结构,并且新创建的Yhdang_tmp表中不能有任何数据

试题——7、阅读下面的存储过程,回答问题:
CREATE Procedure GetColumn
@Table_name varchar(200)
as
declare @field varchar(30)
declare @sql varchar(3000)


declare cur cursor local read_only static scroll for select [name] from syscolumns where [id]=(select [id] from sysobjects where [name]=@table_name )
open cur
fetch first from Cur into @field

select @Sql=''
while @@FETCH_STATUS=0
begin
select @sql=@Sql+','+@field
print @sql
fetch next from Cur into @field
end
close cur
DeAllocate cur
print @sql
print substring(@sql,2,len(@sql)-1)
GO


1) 请阐述黑体字部分的含义;


2) 现有数据表T1,字段为Hth,Dh,Yhmc,Yhdz,如果在SQL 查询分析器中执行语句exec GetColumn 'T1',请写出调试消息中的内容。
...全文
131 点赞 收藏 12
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
pt1314917 2008-03-10

--4、
select dh,bml from yhdang where bml like '一局%'


--1、
insert into hdmx(Dh,Hssj,Thsc,Zjjx) select Dh,Hssj,Thsc,Zjjx from [hdmx200605]


--2、
select * from T1 a where not exists(select 1 from t2 where yhmc=a.yhmc)

--3、
if not exists(select 1 from hthhf where hf>0)
begin
drop table hthhf
end

--4、
update yhdang set hfadd=b.hfhjs from yhdang a,
(select dh,sum(hfhj)hfhjs from [hdmx200605] group by dh) b
where a.dh=b.dh


--5、
insert into tel_new..yhdang select * from tel_old..yhdang



--6、
select top 0 * into yhdang_tmp from yhdang

--7、
存储过程中看不到黑体字。。
回复
深渊的水影 2008-03-10
[Quote=引用 7 楼 playwarcraft 的回复:]
2) 现有数据表T1,字段为Hth,Dh,Yhmc,Yhdz,如果在SQL 查询分析器中执行语句exec GetColumn 'T1',请写出调试消息中的内容。

================================
加字串,應該是

,Dh
,Dh,Hth
,Dh,Hth,Yhdz
,Dh,Hth,Yhdz,Yhmc --以上4條是while的print @sql結果
,Dh,Hth,Yhdz,Yhmc
Dh,Hth,Yhdz,Yhmc
[/Quote]

这个是对的。。
呵呵。。

技术还是不行啊。。
回复
深渊的水影 2008-03-10
上面看错题。。

下面才是最后一个答案

Hth,
Hth,Dh,
Hth,Dh,Yhmc,
Hth,Dh,Yhmc,Yhdz,
Hth,Dh,Yhmc,Yhdz,
th,Dh,Yhmc,Yhdz,
回复
fcuandy 2008-03-10
SELECT dh,bml FROM Yhdang WHERE Bml LIKE '一局%'
SELECT dh,bml FROM Yhdang WHERE CHARINDEX('一局',Bml)=0
...


INSERT Hdmx(dh,hssj,thsc,zjjx) SELECT dh,hssj,thsc,zjjx FROM hdmx200605



SELECT a.* FROM t1 a WHERE NOT EXISTS(SELECT 1 FROM t2 WHERE yhmc=a.yhmc)
SELECT a.* FROM t1 WHERE 1>(SELECT COUNT(*) FROM t2 WHERE yhmc=a.yhmc)
SELECT a.* FROM t1 WHERE yhmc NOT IN(SELECT yhmc FROM t2)
SELECT a.* FROM t1 a LEFT JOIN t2 b ON a.yhmc=b.yhmc WHERE b.yhmc IS NULL
...

IF object_id('hthff') IS NOT NULL
BEGIN
IF NOT EXISTS(SELECT 1 FROM hthhf WHERE hf>0)
DROP TABLE hthhf
END
..

UPDATE a SET HfAdd = sHfhj
FROM Yhdang a
INNER JOIN
(SELECT dh,SUM(hfhj) sHfhj FROM hdmx200605 GROUP BY dh) b
ON a.dh=b.dh


INSERT tel_new..yhdang SELECT * /*or fields list*/ FROM tel_old..yhdang
--openrowset
--opendatasource...
--openquery...

SELECT * FROM yhdang_tmp FROM yhdang WHERE 1=0

7,存储过程不答了。
回复
dawugui 2008-03-10
你们都写完了,我接个分.
回复
playwarcraft 2008-03-10
2) 现有数据表T1,字段为Hth,Dh,Yhmc,Yhdz,如果在SQL 查询分析器中执行语句exec GetColumn 'T1',请写出调试消息中的内容。

================================
加字串,應該是

,Dh
,Dh,Hth
,Dh,Hth,Yhdz
,Dh,Hth,Yhdz,Yhmc --以上4條是while的print @sql結果
,Dh,Hth,Yhdz,Yhmc
Dh,Hth,Yhdz,Yhmc
回复
深渊的水影 2008-03-10
试题——7、阅读下面的存储过程,回答问题:
CREATE Procedure GetColumn
@Table_name varchar(200)
as
declare @field varchar(30)
declare @sql varchar(3000)


declare cur cursor local read_only static scroll for select [name] from syscolumns where [id]=(select [id] from sysobjects where [name]=@table_name )
open cur
fetch first from Cur into @field

select @Sql=''
while @@FETCH_STATUS=0
begin
select @sql=@Sql+','+@field
print @sql
fetch next from Cur into @field
end
close cur
DeAllocate cur
print @sql
print substring(@sql,2,len(@sql)-1)
GO


1) 请阐述黑体字部分的含义;

么看到黑体字

2) 现有数据表T1,字段为Hth,Dh,Yhmc,Yhdz,如果在SQL 查询分析器中执行语句exec GetColumn 'T1',请写出调试消息中的内容。

select Hth,Dh,Yhmc,Yhdz
elect Hth,Dh,Yhmc,Yhdz



回复
tim_spac 2008-03-10
试题——4、返回表Yhdang中条件为字段Bml以字符串“一局”打头的所有记录,返回字段为dh,bml(字段类型均为Varchar(8))
select dh, bml
from Yhdang
where Bml like '一局%'


试题——1、将Hdmx200605表中所有记录插入到Hdmx表(Hdmx表已存在且与hdmx200605表结构完全一致)中,插入时仅考虑字段Dh,Hssj,Thsc,Zjjx,其他字段均按默认值即可:
insert into Hdmx
select Dh, Hssj, Thsc, Zjjx
from Hdmx200605


试题——2、有两个数据表T1,T2都有关键字段Yhmc(用户名称)。从T1表中查询在T2表中不存在的所有用户记录(包含所有字段)
select *
from T1
where not exists (select 1 from T2 where T2.Yhmc=T1.Yhmc)


试题——3、如果表Hthhf中不存在hf>0的记录,就将该表删除
if not exists (select 1 from Hthhf where hf>0)
drop table Hthhf


试题——4、表Yhdang及Hdmx200605均有字段Dh(varchar(8))及字段HfAdd(Money)要求按Dh的对应关系,更新表 Yhdang表,使Yhdang表中的HfAdd等于对明细表Hdmx200605按字段 Dh分组求和后的字段Hfhj的值
update Yhdang set
HfAdd = b.Hfhj
from Yhdang a
join (select Dh, Hfhj=sum(Hfhj) from Hdmx200605 group by Dh) b on a.Dh=b.Dh
回复
liangCK 2008-03-10
分数留给楼下的.
回复
liangCK 2008-03-10
分数留给楼下的.
回复
深渊的水影 2008-03-10
试题——4、返回表Yhdang中条件为字段Bml以字符串“一局”打头的所有记录,返回字段为dh,bml(字段类型均为Varchar(8))

select dh,bml from Yhdang where Bml like N'一局%'


试题——1、将Hdmx200605表中所有记录插入到Hdmx表(Hdmx表已存在且与hdmx200605表结构完全一致)中,插入时仅考虑字段Dh,Hssj,Thsc,Zjjx,其他字段均按默认值即可:

insert into Hdmx (Dh,Hssj,Thsc,Zjjx)
select Dh,Hssj,Thsc,Zjjx
from Hdmx200605


试题——2、有两个数据表T1,T2都有关键字段Yhmc(用户名称)。从T1表中查询在T2表中不存在的所有用户记录(包含所有字段)

select * from T1 where Yhmc not in (select Yhmc from T2)


试题——3、如果表Hthhf中不存在hf> 0的记录,就将该表删除

if not exists ( select * from Hthhf where hf> 0)
drop table Hthhf


试题——4、表Yhdang及Hdmx200605均有字段Dh(varchar(8))及字段HfAdd(Money)要求按Dh的对应关系,更新表 Yhdang表,使Yhdang表中的HfAdd等于对明细表Hdmx200605按字段 Dh分组求和后的字段Hfhj的值

update Yhdang set HfAdd = sum(T2.Hfhj)
from Yhdang T1
JOIN Hdmx200605 T2 ON T1.Dh=T2.Dh
GROUP BY T2.Dh




试题——5、数据库Tel_Old和数据库Tel_New都有结构完全一样表Yhdang,现要把Tel_Old的 Yhdang里的数据导入Tel_New的Yhdang,要求至少写出两种导入方法

INSERT INTO [Tel_New]..Yhdang select * from [Tel_Old]..Yhdang 


2. SQL SERVER DTS


试题——6、用一条SQL语句创建一张结构和Yhdang一样的表Yhdang_tmp,但事先并不知道表Yhdang的结构,并且新创建的Yhdang_tmp表中不能有任何数据

select * into  Yhdang_tmp from  Yhdang where 1=0



回复
kelph 2008-03-10
这分容易赚,让给后来人
回复
相关推荐
发帖
MS-SQL Server
创建于2007-09-28

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2008-03-10 03:55
社区公告
暂无公告