sql xml ÈëÃÅ
*
sql xml ÈëÃÅ:
--by jinjazz
--http://blog.csdn.net/jinjazz
1¡¢xml: ÄÜÈÏÊ¶ÔªËØ¡¢ÊôÐÔºÍÖµ
2¡¢xpath: ѰַÓïÑÔ£¬ÀàËÆwindowsĿ¼µÄ²éÕÒ(ûÓùýdirÃüÁîµÄ»°¾ÍÈ¥Ãæ±Ú)
Óï·¨¸ñʽ£¬ÕâЩÓï·¨¿ÉÒÔ×éºÏΪÌõ¼þ£º
"."±íʾ×Ô¼º£¬".."±íʾ¸¸Ç×£¬"/"±íʾ¶ù×Ó£¬"//"±íʾºó´ú£¬
"name"±íʾ°´Ãû×Ö²éÕÒ£¬"@name"±íʾ°´ÊôÐÔ²éÕÒ
"¼¯ºÏ[Ìõ¼þ]" ±íʾ¸ù¾ÝÌõ¼þÈ¡¼¯ºÏµÄ×Ó¼¯£¬Ìõ¼þ¿ÉÒÔÊÇ
Êý Öµ£ºÊý×Ö,last(),last()-Êý×Ö µÈ
²¼¶ûÖµ£ºposition()<Êý×Ö,@name='Ìõ¼þ',name='Ìõ¼þ'
Ìõ¼þÊDz¼¶ûÖµµÄʱºò¿ÉÒԺϲ¢¼ÆË㣺and or
3¡¢xquery: »ùÓÚxpath±êµÄ×¼²éѯÓïÑÔ£¬sqlserver xquery°üº¬ÈçϺ¯Êý
exist(xpathÌõ¼þ)£º·µ»Ø²¼¶ûÖµ±íʾ½ÚµãÊÇ·ñ´æÔÚ
query(xpathÌõ¼þ)£º·µ»ØÓÉ·ûºÏÌõ¼þµÄ½Úµã×é³ÉµÄеÄxmlÎĵµ
&n
Ïà¹ØÎĵµ£º
¹ØÓÚÁ½±í¹ØÁªµÄupdate£¬µ«Óï¾äÔõôд¶¼²»ÕýÈ·£¬ÀÏÊDZ¨´í£¬ÓÚÊÇÐľªÈâÌø£¨¾ÍŲ»Äܼ°Ê±Íê³É²Ù×÷£©È¥²éÁËһϣ¬NND£¬ÔÀ´°ÑSQLд³ÉÁËÔÚSQL ServerÏÂÃæµÄÌØÓÐÐÎʽ£¬ÕâÖÖÓï·¨ÔÚOracleÏÂÃæÊÇÐв»Í¨µÄ£¬¼±Ã¦¸Ä»ØÀ´£¬¼°Ê±Íê³ÉÁËÈÎÎñ¡£Ë³±ãÒ²°Ñ²éµ½µÄSQLÌû³öÀ´£¬ÄÄÌìÔÙÍü¼ÇÁË£¬Ò²ºÃÔÚÕâÀïÕÒ»ØÀ´£º
update customers a ......
<?xml version="1.0" encoding="UTF-8"?>
<projects>
<node Country="°µ°µ°¡" Gold="10" Silver="20" Bronze="30"/>
<node Country="°×°ß²¡" Gold="30" Silver="20" Bronze="10"/>
<node Country="³£³£³§" Gold="20" Silver="40" Bronze="60"/>
<node Country="¶Ä¶«µÀ" Gold="5 ......
selectÓï¾äÖÐÖ»ÄÜʹÓÃsqlº¯Êý¶Ô×ֶνøÐвÙ×÷£¨Á´½Ósql server£©£¬
select ×Ö¶Î1 from ±í1 where ×Ö¶Î1.IndexOf("ÔÆ")=1;
ÕâÌõÓï¾ä²»¶ÔµÄÔÒòÊÇindexof£¨£©º¯Êý²»ÊÇsqlº¯Êý£¬¸Ä³Ésql¶ÔÓ¦µÄº¯Êý¾Í¿ÉÒÔÁË¡£
left£¨£©ÊÇsqlº¯Êý¡£
select ×Ö¶Î1 from ±í1 where charindex£¨'ÔÆ',×Ö¶Î1£©=1;
×Ö·û´®º¯Êý¶Ô¶þ½øÖÆÊý¾Ý¡¢×Ö·û´®º ......
SQL Server 2005ΪXMLÌṩ±¾µØÖ§³Ö;ÏÖÔÚ¿ÉÒÔÔÚOPENXML½ÚµãÖÐʹÓÃÒ»¸ö´øÓÐnodes()º¯ÊýµÄXML×Ö¶ÎÀàÐͰÑÒ»¸öXMLÎļþת»¯ÎªÒ»¸öÐм¯¡£ÈÃÎÒÃÇÀ´¿´Ò»¸öʹÓÃOPENXMLµÄ¼òµ¥Àý×Ó£¬²¢ÏÔʾÈçºÎ°ÑËüת»¯ÎªÔÚSQL Server 2005ÖÐʹÓÃXML×Ö¶ÎÀàÐͺÍnodes()º¯Êý¡£
¡¡¡¡ÎªÁËʹÎÒÃǵÄÀý×Ó¼òµ¥»¯£¬ÎÒÃǽ«¼ÙÉèÎÒÃÇÐèÒªÖ´ÐÐijÖÖ»ùÓڲɹº¶©µ¥ÁÐ±íµ ......