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

ÈçºÎÔÚSQL Server 2005ÖÐÓÃXQuery·Ö½âXMLÊý¾Ý

ÉÏÖÜ£¬ÎÒÃǼòµ¥ÌÖÂÛÁËÈçºÎÓ¦ÓÃSQL ServerÖеÄOPENXMLº¯Êý½«XMLÊý¾Ý·Ö½âµ½¸öÒ»¸ö¹ØÏµ¸ñʽÖС£ÎÒÃÇÁ˽⵽OPENXMLʹÓÃÆðÀ´¼òµ¥Ö±½Ó£¬µ«·Ç³£Õ¼ÓÃÄÚ´æ¡£±¾ÖÜ£¬ÎÒÃÇÌÖÂÛSQL Server 2005µÄй¦ÄÜ£¬ËüÔÊÐíÄ㽫XMLÊý¾Ý·Ö½âµ½¹ØÏµ¸ñʽÖУ¬¶ø²»±ØºÄÓÃÌ«¶àÄÚ´æ¡£
ÔÚ¾ÙÀý˵Ã÷ÈçºÎ·Ö½âÉÏһƪÎÄÕÂÖеÄÊý¾Ýʱ£¬ÎÒÃÇÊ×ÏÈÁ˽âÒ»ÏÂXQueryºÍËüÔÚSQL Server 2005ÖÐΪ¿ª·¢ÕßÌṩµÄ¹¦ÄÜ¡£
XQuery½éÉÜ
XQuery£¬Ò²³Æ×÷XML Query£¬ÊÇÒ»ÖÖ²éѯXMLÊý¾ÝµÄÓïÑÔ£¬ÔÊÐíÄãÌáÈ¡ËùÐèµÄ½ÚµãºÍÔªËØ¡£ËüÓÉW3C¶¨Ò壬¿ÉÓÃÓÚ½ñÌìµÄ´ó¶àÊýÖ÷Á÷Êý¾Ý¿âÒýÇæÖУ¬ÈçOracle¡¢DB2ºÍSQL Server¡£
SQL Server 2005 XQueryº¯Êý
ÏÂÃæµÄËĸöº¯ÊýÊÇSQL Server 2005ÖеÄXQueryº¯Êý¡££¨×¢Ò⣬XML¡¢XQueryÓï¾äºÍÏÂÃæµÄº¯Êý¶¼Çø·Ö´óСд¡£ÀýÈ磬SQL±àÒëÆ÷½ÓÊÜXMLÊý¾ÝÖеÄ.exist£¬µ«¾Ü¾ø.EXIST»ò.Exist¡££©
xml.exist
Õâ¸ö·½·¨¸ù¾ÝÒ»¸öXML½ÚµãÉϵÄËÑË÷±í´ïʽ·µ»ØÒ»¸ö²¼¶ûÖµ¡£ÀýÈ磬ÁбíAÖÐXML´úÂëÆ¬¶ÎÖеÄÓï¾ä½«·µ»Ø1£¨Õ棩£º
SELECT @x.exist('/christmaslist/person[@gift = "socks"]')
Õâ¸öÓï¾ä·µ»Ø0£¨¼Ù£©£º
SELECT @x. exist ('/christmaslist/zach')
ÓÉÓÚ“Socks”Ò»´Ê±»·âÌ×£¬Õâ¸öÓï¾ä½«·µ»Ø0£¨¼Ù£©¡£
SELECT @x.exist('/christmaslist/person[@gift = "socks"]')
xml.value
Õâ¸ö·½·¨½ÓÊÜÒ»¸öXQueryÓï¾ä²¢·µ»ØÒ»¸öµ¥¶ÀÖµ¡£Ê¹ÓÃÁбíAÖÐͬÑùµÄXML´úÂëÆ¬¶Î£¬²»¿ÉÒÔʹÓÃVALUEº¯ÊýÉú³É“betty”Öµ£¬ÈçÏÂËùʾ£º
SELECT @x.value('/christmaslist[1]/person[1]/@name', 'VARCHAR(20)')
¶øXQueryÉú³É“zach”Öµ¡£
SELECT @x.value('/christmaslist[1]/person[2]/@name', 'VARCHAR(20)')
xml.query
Õâ¸ö·½·¨½ÓÊÜÒ»¸öXQuery²¢·µ»ØÒ»¸öXMLÊý¾ÝÀàÐ͵ÄʵÀý¡£¿ÉÒÔ°´ÐèÒª½«ÕâЩ²éѯ¼òµ¥»ò¸´ÔÓ»¯£¬ÏÂÃæÊÇÒ»¸ö¼òµ¥µÄÀý×Ó£º
SELECT @x.query('/christmaslist/person')
Ëü·µ»ØXMLÎļþ£º
<person name="betty" gift="camera" />
<person name="zach" gift="elmo doll" />
<person name="brad" gift="socks" />
xml.nodes
ÔÚÄãÐèÒª½«Ò»¸öXMLÊý¾ÝÀàÐͱäÁ¿ÖеÄÊý¾Ý·Ö½âµ½¹ØÏµÊý¾ÝÖÐʱ£¬Õâ¸ö·½·¨Ê®·ÖÓÐÓá£Õâ¸ö·½·¨½ÓÊÜÒ»¸öXQueryÓï¾ä×÷Ϊ²ÎÊý£¬²¢·µ»ØÒ»¸ö°üº¬XML±äÁ¿Âß¼­±êÁ¿Êý¾ÝµÄÐм¯¡£ÁбíBÖеIJéѯÀûÓÃÉÏÃæ¶¨ÒåµÄXML±äÁ¿£¬²¢½«Êý¾Ý·Ö½âµ½Ò»¸ö½á¹û¼¯ÖУ¬ËüÏÔʾÔÚXML±äÁ¿Öж¨ÒåµÄÈËÎïÐÕÃû¡£
ÐÞ¸ÄOPENXML´æ´¢¹ý³Ì
ÏÖÔÚÎÒÀ´ËµÃ÷ÈçºÎÐÞ¸ÄÉÏÖܵÄOPENXML


Ïà¹ØÎĵµ£º

SQL²éѯÓï¾ä£¨¹ØÓÚÖØ¸´Êý¾ÝµÄ£©

1¡¢²éѯ±íÖÐÖØ¸´Êý¾Ý¡£select * from people
where peopleId in (select  peopleId  from  people  group  by  peopleId  having  count(peopleId) > 1)
2¡¢É¾³ý±íÖжàÓàµÄÖØ¸´¼Ç¼£¬Öظ´¼Ç¼ÊǸù¾Ýµ ......

sql²éѯÓÅ»¯


1¡¢    ÓóÌÐòÖУ¬±£Ö¤ÔÚʵÏÖ¹¦ÄܵĻù´¡ÉÏ£¬¾¡Á¿¼õÉÙ¶ÔÊý¾Ý¿âµÄ·ÃÎÊ´ÎÊý£»Í¨¹ýËÑË÷²ÎÊý£¬¾¡Á¿¼õÉÙ¶Ô±íµÄ·ÃÎÊÐÐÊý,×îС»¯½á¹û¼¯£¬´Ó¶ø¼õÇáÍøÂ縺µ££»Äܹ»·Ö¿ªµÄ²Ù×÷¾¡Á¿·Ö¿ª´¦Àí£¬Ìá¸ßÿ´ÎµÄÏìÓ¦ËÙ¶È£»ÔÚÊý¾Ý´°¿ÚʹÓÃSQLʱ£¬¾¡Á¿°ÑʹÓõÄË÷Òý·ÅÔÚÑ¡ÔñµÄÊ×ÁУ»Ëã·¨µÄ½á¹¹¾¡Á¿¼òµ¥£»ÔÚ²éѯʱ£¬²»Òª¹ý¶àµØÊ¹Óà ......

JavaÓëXMLÁªºÏ±à³ÌÖ®SAXƪ

ת×Ôhttp://www0.ccidnet.com/tech/guide/2001/10/08/58_3392.html
SAX¸ÅÄî
SAXÊÇSimple API for XMLµÄËõд£¬Ëü²¢²»ÊÇÓÉW3C¹Ù·½ËùÌá³öµÄ±ê×¼£¬¿ÉÒÔ˵ÊÇ“Ãñ¼ä”µÄÊÂʵ±ê×¼¡£Êµ¼ÊÉÏ£¬ËüÊÇÒ»ÖÖÉçÇøÐÔÖʵÄÌÖÂÛ²úÎï¡£ËäÈ»Èç´Ë£¬ÔÚXMLÖжÔSAXµÄÓ¦ÓÃË¿ºÁ²»±ÈDOMÉÙ£¬¼¸ºõËùÓеÄXML½âÎöÆ÷¶¼»áÖ§³ÖËü¡£
ÓëDOM±È½Ï¶øÑÔ ......

DOMÓëSAX½âÎöxmlµÄÇø±ð


SAX¸ÅÄî
SAXÊÇSimple API for XMLµÄËõд£¬Ëü²¢²»ÊÇÓÉW3C¹Ù·½ËùÌá³öµÄ±ê×¼£¬¿ÉÒÔ˵ÊÇ“Ãñ¼ä”µÄÊÂʵ±ê×¼¡£Êµ¼ÊÉÏ£¬ËüÊÇÒ»ÖÖÉçÇøÐÔÖʵÄÌÖÂÛ²úÎï¡£ËäÈ»Èç´Ë£¬ÔÚXMLÖжÔSAXµÄÓ¦ÓÃË¿ºÁ²»±ÈDOMÉÙ£¬¼¸ºõËùÓеÄXML½âÎöÆ÷¶¼»áÖ§³ÖËü¡£
ÓëDOM±È½Ï¶øÑÔ£¬SAXÊÇÒ»ÖÖÇáÁ¿Ð͵ķ½·¨¡£ÎÒÃÇÖªµÀ£¬ÔÚ´¦ÀíDOMµÄʱºò£¬ÎÒÃÇÐèÒª¶Á ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ