我正在尝试将我的Oracle查询转换为SQL Server。尝试转换EXTRACTVALUE
,XMLSEQUENCE
,XMLTYPE
函数时,下面显示的查询会造成一些困难。
任何人都可以帮我学习如何将这些转换为SQL Server吗?
EXTRACTVALUE(COLUMN_VALUE, 'pipeline/@name') NAME
FROM TABLE (SELECT XMLSEQUENCE(XMLTYPE(MESSAGE).EXTRACT('processEngine'))
FROM NMS_MESSAGES WHERE OBJECT_CODE='pe_monitor' AND ID=@WHERE:PARAM:USER_DEF:INTEGER:PARAM_PROCESS_ENGINE@)) INSTANCENAME
,(SELECT EXTRACTVALUE(COLUMN_VALUE, 'processEngine/@id') FROM TABLE (SELECT XMLSEQUENCE(XMLTYPE(MESSAGE).EXTRACT('processEngine'))
FROM NMS_MESSAGES WHERE OBJECT_CODE='pe_monitor' )) ENGINE_ID
提前致谢。
答案 0 :(得分:1)
想想XQuery。我看到EXTRACTVALUE
似乎@xml.values('(@node/@attr)[1]','type')
而EXTRACT
是@xml.nodes('path/path/path')
如果知道你应该完全解析的xml结构,那么你将毫无问题地转换这个查询。