Ò»¸ösql¼òµ¥º¯ÊýʵÏÖÆ´½Ó×Ö·û´®
--²âÊÔÊý¾Ý
create table table1(AID int,NAME nvarchar(20))
create table table2 (BID int,NUMBER nvarchar(20))
insert into table1 select 1,'Tom' union all
select 2,'Jim'
insert into table2 select 1,20 union all
select 1,30
--º¯Êý
create function F_Str(@ID int)
returns nvarchar(100)
as
begin
declare @S nvarchar(100)
select return @S=isnull(@S+',','')+NUMBER from table2 where BID=@ID
return @S
end
--²éѯ
select NAME,NUMBER = dbo.F_Str(AID) from table1
--½á¹û
-------------------
Tom 20,30
Jim NULL
Ïà¹ØÎĵµ£º
Èç¹ûÄã¾³£Óöµ½ÏÂÃæµÄÎÊÌ⣬Äã¾ÍÒª¿¼ÂÇʹÓÃSQL ServerµÄÄ£°åÀ´Ð´¹æ·¶µÄSQLÓï¾äÁË£º
SQL³õѧÕß¡£
¾³£Íü¼Ç³£ÓõÄDML»òÊÇDDL SQL Óï¾ä¡£
ÔÚ¶àÈË¿ª·¢Î¬»¤µÄSQLÖУ¬Ã¿¸öÈ˶¼ÓÐ×Ô¼ºµÄSQLϰ¹ß£¬Ã»ÓÐÒ»Ì×ͳһµÄ¹æ·¶¡£
ÔÚSQL Server Management StudioÖУ¬ÒѾ¸ø´ó¼ÒÌṩÁ˺ܶೣÓõÄÏÖ³ÉSQL¹æ·¶Ä£°å¡£
SQL Server Management ......
ÎÊÌâ
¡¡¡¡µ±sql serverÆô¶¯Ê±£¬ÎÒºÜÏëÔËÐÐÒ»¸ö´æ´¢¹ý³Ì¡£ÓÐûÓÐÒ»ÖÖ·½·¨¿ÉÒÔÔÚÿ´ÎSQL Server·þÎñÆô¶¯Ê±¶¼»á×Ô¶¯Ö´ÐÐÕâ¸ö´æ´¢¹ý³ÌÄØ?
¡¡¡¡×¨¼Ò½â´ð
¡¡¡¡sql ServerÌṩÁËϵͳ´æ´¢¹ý³Ìsp_procoption£¬Õâ¸ö´æ´¢¹ý³Ì¿ÉÒÔÓÃÓÚµ±SQL Server·þÎñÆô¶¯Ê±Ö¸ÅÉÒ»¸ö»òÕß¶à¸ö´æ´¢¹ý³Ì×Ô¶¯Ö´ÐС£ÕâÊÇÒ»¸öºÜ²»´íµÄÑ¡Ôñ£¬Ëü¿ÉÒÔÓÃÓÚ¶àÖÖ ......
£¨18£©ÓÃEXISTSÌæ»»DISTINCT£º
µ±Ìá½»Ò»¸ö°üº¬Ò»¶Ô¶à±íÐÅÏ¢(±ÈÈ粿ÃűíºÍ¹ÍÔ±±í)µÄ²éѯʱ,±ÜÃâÔÚSELECT×Ó¾äÖÐʹÓÃDISTINCT¡£Ò»°ã¿ÉÒÔ¿¼ÂÇÓÃEXISTÌæ»», EXISTS ʹ²éѯ¸üΪѸËÙ,ÒòΪRDBMSºËÐÄÄ£¿é½«ÔÚ×Ó²éѯµÄÌõ¼þÒ»µ©Âú×ãºó,Á¢¿Ì·µ»Ø½á¹û¡£Àý×Ó£º
(µÍЧ):
SELECT DISTINCT DEPT_NO,DEPT_NAME  ......
l INNER JOIN
ÄÚÁ¬½ÓÊÇ×î³£¼ûµÄÒ»ÖÖÁ¬½Ó£¬ËüÒ³±»³ÆÎªÆÕͨÁ¬½Ó£¬¶øE.FCodd×îÔç³ÆÖ®Îª×ÔÈ»Á¬½Ó¡£
ÏÂÃæÊÇANSI SQL£92±ê×¼
select * from t_institution i
inner join t_teller t
on i.inst_no = t.inst_no //˵Á½¸ö±íÖ®¼äµÄ¹ØÏµÓÃON
where i.inst_no = "5801"
ÆäÖÐinner¿ÉÒÔʡ ......
ÒýÓÃ:http://blog.csdn.net/wizardlun/archive/2009/09/08/4531576.aspx
½ñÌ죬ÖÕÓÚ°ÑoracleÖеÄÊý¾Ý¿âµ¼Èëµ½sql serverÖÐÁË£¬·½·¨ÈçÏ£º
Ò»¡¢ÔÚsql serverÖн¨¸öͬÃûÊý¾Ý¿â£¬ÀýÈçssdb¡£
¶þ¡¢ÓÒ¼üµã»÷ssdb,Ñ¡Ôñ“ËùÓÐÈÎÎñ”——>“µ¼ÈëÊý¾Ý”£¬¾Í»áµ¯³öÒ»¸ö“DTS ......