XMLEXISTS ?????????

XMLEXISTS??????SQL??????XML?????????????????????????????????????????????SQL/XML??????????????????

XMLEXISTS?????????????????????????????????????????????XML???????????????DerbyXML????????????

??????

XMLEXISTS ( xquery?????????????????????
    PASSING BY REF XML?????? [ BY REF ] )
xquery?????????????????????
????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????(??????????????????)?????????????????????????????????Derby?????????????????????????????? xquery????????????????????????Apache Xalan???????????????????????????XPath????????????????????????????????????Derby??????XML???????????????????????????????????????Apache Xalan??????????????????Xalan???XQuery??????????????????????????????????????????Derby????????????????????????????????? ??????Xalan?????????????????????????????????????????????????????????????????????????????????????????????Xalan?????????????????????Derby???????????????SQLException????????????????????????????????? XPath?????????XQuery????????????????????????????????????????????????????????????????????????????????????http://www.w3.org/TR/xpath????????????http://www.w3.org/TR/xquery/
XML??????
XML?????????????????????????????????SQL/XML??????????????????????????????????????? XML????????????????????????????????????????????????????????? Derby???????????????????????????XML???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? ???????????????Derby XMLQUERY???????????????????????????????????????????????????????????? ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? ???????????????????????????Derby??????????????????????????????
BY REF
?????????????????????????????????????????????Derby?????????????????????????????????????????????????????????????????? BY REF?????????????????????????????????????????????XMLEXISTS???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????SQL/XML????????????????????????????????????

?????????????????????????????????????????????????????????

XMLEXISTS????????????????????????xquery????????????????????????XML???????????????????????????????????????????????????SQL?????????????????? XMLEXISTS???????????????????????????
UNKNOWN
XML?????????null???????????????????????????
TRUE
??????????????????xml???????????????????????????????????????????????????????????????????????????????????????????????????
FALSE
??????????????????xml????????????????????????????????????????????????????????????????????????

XMLEXISTS??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????XMLQUERY??????????????????????????????????????????

XMLEXISTS?????????????????????SQL?????????????????????????????????????????????????????????????????????????????????????????????XMLEXISTS?????????????????????????????????????????????????????????XMLEXISTS???????????????????????????????????????????????????????????????WHERE?????????????????????????????????????????????

???

x_table?????????????????????xcol?????????XML????????????age?????????20???student????????????????????????????????????????????????????????????????????????
SELECT id, XMLEXISTS('//student[@age=20]' PASSING BY REF xcol) 
    FROM x_table
x_table????????????xcol?????????XML?????????null??????????????????????????????/roster/student????????????????????????????????????ID??????????????????????????????????????????
SELECT id FROM x_table WHERE XMLEXISTS('/roster/student' PASSING BY REF xcol)
x_table?????????????????????xcol?????????XML????????????????????????XML???????????????????????????????????????????????????????????????age?????????25???????????????student??????????????????????????????????????????????????????????????????????????????????????????????????? ????????????????????????????????????????????????
CREATE TABLE x_table ( id INT, xcol XML CHECK (XMLEXISTS ('//student[@age < 25]' PASSING BY REF xcol)) )

??????????????????

Derby??????XML???????????????????????????Apache Xerces????????????JAXP parser???Apache Xalan???Java?????????????????????????????????????????????????????????????????? JAXP parser????????????Xalan????????????????????????????????????????????????????????????XMLEXISTS??????????????????????????????????????????????????????