sqlÌæ»»Óï¾ä
--·Ö½â×Ö·û´®°üº¬µÄÐÅÏ¢ÖµºóÈ»ºóºÏ²¢µ½ÁíÍâÒ»±íµÄÐÅÏ¢
--(°®Ð¾õÂÞ.ع»ª(Ê®°ËÄê·çÓê,ÊØµÃ±ùɽѩÁ«»¨¿ª) 2007-12-23 ¹ã¶«ÉîÛÚ)
/*ÎÊÌâÃèÊö
tba
ID classid name
1 1,2,3 Î÷·þ
2 2,3 ÖÐɽװ
3 1,3 Ãû¿ã
tbb
id classname
1 Ò·þ
2 ÉÏÒÂ
3 ¿ã×Ó
ÎҵõĽá¹ûÊÇ
id classname name
1 Ò·þ,ÉÏÒÂ,¿ã×Ó Î÷·þ
2 ÉÏÒ£¬¿ã×Ó ÖÐɽװ
3 Ò·þ£¬¿ã×Ó Ãû¿ã
*/
-----------------------------------------------------
--sql server 2000ÖеÄд·¨
create table tba(ID int,classid varchar(20),name varchar(10))
insert into tba values(1,'1,2,3','Î÷·þ')
insert into tba values(2,'2,3' ,'ÖÐɽװ')
insert into tba values(3,'1,3' ,'Ãû¿ã')
create table tbb(ID varchar(10), classname varchar(10))
insert into tbb values('1','Ò·þ')
insert into tbb values('2','ÉÏÒÂ')
insert into tbb values('3','¿ã×Ó')
go
--µÚ1ÖÖ·½·¨£¬´´½¨º¯ÊýÀ´ÏÔʾ
create function f_hb(@id varchar(10))
returns varchar(1000)
as
begin
declare @str varchar(1000)
set @str=''
select @str=@str+','+[classname] from tbb where charindex(','+cast(id as varchar)+',',','+@id+',')>0
return stuff(@str,1,1,'')
end
go
select id,classid=dbo.f_hb(classid),name from tba
drop function f_hb
/*
id classid name
----------- ------------- ----------
1 Ò·þ,ÉÏÒÂ,¿ã×Ó Î÷·þ
2 &
Ïà¹ØÎĵµ£º
²¢¼¯:
ʹÓà UNION ÔËËã·û×éºÏ¶à¸ö½á¹û
SELECT name,num from Table1
UNION
SELECT name,num from Table2
×¢Ò⣺²éѯµÄ×ֶθöÊý±ØÐëÏàͬ£¬Table2µÄ×Ö¶ÎÀàÐÍÒª¸úTable1µÄÏàͬ.
Èç¹ûʹÓà UNION ÔËËã·û£¬ÄÇôµ¥¶ÀµÄ SELECT Óï¾ä²»Äܰüº¬Æä×Ô¼ºµÄ ORDER BY »ò COMPUTE ×Ӿ䡣ֻÄÜÔÚ×îºóÒ»¸ö SELECT Óï¾äµÄºóÃæÊ¹ÓÃÒ»¸ö ORD ......
Ò»£®WITH ASµÄº¬Òå
WITH AS¶ÌÓҲ½Ð×ö×Ó²éѯ²¿·Ö£¨subquery factoring£©£¬¿ÉÒÔÈÃÄã×öºÜ¶àÊÂÇ飬¶¨ÒåÒ»¸öSQLƬ¶Ï£¬¸ÃSQLƬ¶Ï»á±»Õû¸öSQLÓï¾äËùÓõ½¡£ÓеÄʱºò£¬ÊÇΪÁËÈÃSQLÓï¾äµÄ¿É¶ÁÐÔ¸ü¸ßЩ£¬Ò²ÓпÉÄÜÊÇÔÚUNION ALLµÄ²»Í¬²¿·Ö£¬×÷ΪÌṩÊý¾ÝµÄ²¿·Ö¡£
ÌØ±ð¶ÔÓÚUNION ALL±È½ÏÓÐÓá£ÒòΪUNION ALLµÄÿ¸ö²¿·Ö¿ÉÄÜÏàͬ£¬µ ......
Êý¾Ý¿â±íÉè¼ÆÊ±Èç¹ûÉèÖÿÉÒÔΪnull,ÔòËü¾Í²»»á±äΪ'1900-1-01'
Èç¹ûÉè¼ÆÊ±²»¿ÉÒÔΪnull,Ëü¾Í»áĬÈÏΪ: '1900-01-01'
CREATE proc UP_Rsk_AddModel @ygcode varchar(6), @name varchar(8), @xb varchar(2), @bm varchar(32), @jg varchar(16), @mz varchar(16) ......
SQLÖÐobject_idº¯ÊýµÄÓ÷¨ ÊÕ²Ø
int object_id('objectname');
´Ë·½·¨·µ»ØÊý¾Ý¿â¶ÔÏó±êʶºÅ¡£
ÆäÖУ¬²ÎÊýobjectname ±íʾҪʹÓõĶÔÏ󣬯äÊý¾ÝÀàÐÍΪnchar»òchar£¨Èç¹ûΪchar£¬ÏµÍ³½«Æäת»»Îªnchar£©
·µ»ØÀàÐÍΪint£¬±íʾ¸Ã¶ÔÏóÔÚϵͳÖеıàºÅ¡£
±ÈÈ磺
use wf_timesheet
select object_id('usp_check_excess ......
´´½¨´æ´¢¹ý³Ì֮ǰҪÏÈÓÃuseÓï¾äÉùÃ÷Òª½«´æ´¢¹ý³Ì´æ´¢ÔÚÄĸöÊý¾Ý¿âÖÐ. e.g use company; Ö´ÐÐÖ®.Ö®ºó¾Í¿ÉÒÔÉùÃ÷´æ´¢¹ý³ÌÁË. e.g create procedure *** @id varchar(50) , @name int output as select @name=name from table where id=@id È»ºó¿ÉÒÔÓÃalter¶Ô´æ´¢¹ý³Ì½øÐÐÐÞ¸Ä. declare¿ÉÒÔÉùÃ÷Ò»¸ö±äÁ¿ ÓÃset¶Ô±ä ......