Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

DB2 SQL/XMLʹÓÃ

º¯Êý£º
XMLPARSE£º½âÎö×Ö·û»òÕß´ó¶ÔÏó¶þ½øÖÆÊý¾Ý£¬²úÉúXML
XMLSERIALIZE£º½«XMLֵת»»Îª×Ö·û»òÕß´ó¶ÔÏó¶þ½øÖÆÊý¾Ý
XMLVALIDATE£º¸ù¾ÝXML schemaУÑéXMLÖµµÄÓÐЧÐÔ
XMLEXISTS£º¼ì²âXQueryÊÇ·ñ·µ»Ø½á¹û£¨ÈçÓÉÒ»¸ö»ò¶à¸öÏîËù×é³ÉµÄÐòÁУ©
XMLQUERY£ºÖ´ÐÐÒ»¸öXQuery²¢ÒÔÒ»¸öÐòÁзµ»Ø½á¹û
XMLTABLE£ºÖ´ÐÐÒ»¸öXQuery£¬ÒÔ¹ØÏµÊý¾Ý±íÐÎʽ·µ»Ø½á¹û£¨Èç¹û¿ÉÄܵϰ£©
XMLCAST£ºXMLÀàÐÍת»»
XMLEXISTS£º
SELECT name from clients
WHERE xmlexists(
'$c/Client/Address[zip="95116"]'
passing clients.contact as "c"

˵Ã÷£º 
ÔÚWHERE×Ó¾äÖе÷ÓÃXMLEXISTSº¯Êý£¬²ÎÊýÖ¸¶¨ÁËXML·¾¶±í´ïʽ£¬DB2¾Ý´Ëµ¼º½µ½XMLÎĵµÓʱàÔªËØ²¢ÇÒ²éÕÒÖµ 95116¡£ “$c/Client/Address”Ö¸¶¨ÁËDB2ÔÚXMLÎĵµÖж¨Î»ÓʱàÔªËØµÄ·¾¶¡£ÃÀÔª·ûºÅ($)ÓÃÀ´Ö¸¶¨±äÁ¿¡£passing clients.contact as "c"¶Ô±äÁ¿c½øÐж¨Òå¡£ÕâÀ“clients”ÊDZíÃû£¬“contact”ÊÇ XMLÁеÄÁÐÃû¡£»»ÑÔÖ®£¬XMLÎĵµ´«µÝ¸øÁ˱äÁ¿c¡£ DB2¼ìË÷“contact”ÁÐÖеÄXMLÊý¾Ý£¬´Ó¸ù½Ú“client”ÏòÏ£¬Í¨¹ý½Úµã“Address”µ½½Úµã“zip”£¬¾­¹ýÄ¿±êÓÊ±àÆ¥Åä¼ì²éÅжϸÿͻ§ÊÇ·ñ¾ÓסÔÚÄ¿±êµØÇø¡£
ÔÚDB2 9.5ÖнøÐÐÁ˼ò»¯£º
SELECT name from clients
WHERE xmlexists(
'$CONTACT/Client/Address[zip="95116"]'

XMLQuery£º
SELECT xmlquery('$c/Client/email' passing contact as "c")
from clients
WHERE status = 'Gold' 
ʹÓÃXQuery FLWOR±í´ïʽÖеÄfor£º
SELECT name, xmlquery(
‘for $e in $c/Client/email[1] return $e’
passing contact as “c”
)
from clients
WHERE status = ‘Gold’ 
SELECT xmlquery('for $e in $c/Client/email[1]/text()
return <p>{$e}</p>'
passing contact as "c")
from clients
WHERE status = 'Gold' 
XQueryµÄFLWOR±í´ïʽ FLWORÊǼ¸¸ö´ÊÊ××ÖĸµÄËõд£º 
„FOR£º¶ÔÐòÁнøÐеü´ú 
LET£º°ó¶¨±äÁ¿ 
WHERE£º¶¨Òå¹ýÂËÆ÷ 
ORDER£º½«¹ýÂ˽á¹ûÅÅÐò
RETURN£º·µ»Ø²éѯ½á¹û 
ʵÀý£º
CREATE TABLE dept(deptID CHAR(8),deptdoc XML);  
½«ÈçÏÂXMLÎĵµ²åÈëµ½deptdocÁУº


Ïà¹ØÎĵµ£º

SQL ServerÖеÄͨÅä·û

ͨÅä·û_
"_"ºÅ±íʾÈÎÒâµ¥¸ö×Ö·û,¸Ã·ûºÅÖ»ÄÜÆ¥ÅäÒ»¸ö×Ö·û."_"¿ÉÒÔ·ÅÔÚ²éѯÌõ¼þµÄÈÎÒâλÖÃ,ÇÒÖ»ÄÜ´ú±íÒ»¸ö×Ö·û.Ò»¸öºº×ÖֻʹÓÃÒ»¸ö"_"±íʾ.
Àý×Ó£º
if PATINDEX('%[ß¹-×ö]%','ÐèÒªÅжϵÄ×Ö·û')>0 -- ÅжÏÊÇ·ñÓÐ×Ö·û
print 'Óкº×Ö'
else
print 'ÎÞºº×Ö'
ͨÅä·û%
"%"·ûºÅÊÇ×Ö·ûÆ¥Åä·û,ÄÜÆ¥Åä0¸ö»ò¸ü¶à×Ö·ûµÄÈÎÒⳤ¶ ......

SQLÈ¥³ýijһ×Ö¶ÎÖµÖØ¸´¼Ç¼µÄ·½·¨

Ô­Àí£º¶ÔÐèÒªÈ¥ÖØ¸´¼Ç¼µÄ×ֶΰ´×éÅÅÐò£¬È»ºóÈ¡ÆäÖÐÒ»Ìõ¼Ç¼¡£ÔÚ×ܲéѯÓï¾äÖÐʹÓÃinÓï·¨¹ýÂË
È¥µôÖØ¸´¼Ç¼
select * from company where comid in (select Max(comid) from company group by companyname)
µÃµ½Öظ´¼Ç¼Êý
select * from company where comid not in (select Max(comid) from company group by companyn ......

sql ¾­µäÒ»

1.½¨±í
create table temp(rq varchar(10),shengfu nchar(1))
2.²åÈëÊý¾Ý
insert into temp values('2005-05-09','ʤ')
insert into temp values('2005-05-09','ʤ')
insert into temp values('2005-05-09','¸º')
insert into temp values('2005-05-09','¸º')
insert into temp values('2005-05-10','ʤ')
insert i ......

½²½âSQL ServerÖÐÈÝÒ×»ìÏýµÄÊý¾ÝÀàÐÍ


½²½âSQL ServerÖÐÈÝÒ×»ìÏýµÄÊý¾ÝÀàÐÍ
(1)char¡¢varchar¡¢textºÍnchar¡¢nvarchar¡¢ntext 
¡¡¡¡charºÍvarcharµÄ³¤¶È¶¼ÔÚ1µ½8000Ö®¼ä£¬ËüÃǵÄÇø±ðÔÚÓÚcharÊǶ¨³¤×Ö·ûÊý¾Ý£¬¶øvarcharÊDZ䳤×Ö·ûÊý¾Ý¡£Ëùν¶¨³¤¾ÍÊdz¤¶È¹Ì¶¨µÄ£¬µ±ÊäÈëµÄÊý¾Ý³¤¶ÈûÓдﵽָ¶¨µÄ³¤¶Èʱ½«×Ô¶¯ÒÔÓ¢ÎĿոñÔÚÆäºóÃæÌî³ä£¬Ê¹³¤¶È´ïµ½ÏàÓ¦ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ