Hallo Ich muss Xml-Knoten basierend auf dem Kind Knotenwert (nicht ersten Kind) erhalten. Der folgende Code funktioniert nur, wenn ich nur mit dem ersten untergeordneten Wert abfrage.Wie erhalten Sie einen Knoten, der einen untergeordneten Knoten mit einem bestimmten Wert in einem XML-Dokument mit SQL Server enthält?
SELECT A.B.value('(ENT_RPT_ID/text())[1]', 'numeric(10)') AS ReportID
FROM @l_runtime_xml.nodes('//SHEET/DRILLTHRU_PARAM/ENT_RPT[(DEFAULT=1)]') AS A (B)
Probe XML ist wie folgt:
<REPORT_RUNTIME_XML><USER_ID>AISHU</USER_ID><ROLE_ID>dw_rept_cnfg</ROLE_ID><OU_ID>8</OU_ID><LANG_ID>1</LANG_ID><JASPER_FILE/><OUTPUT_FILE>-1</OUTPUT_FILE><REPORT_ID>1516</REPORT_ID><REPORT_NAME>Reddy_ER_2705_RRR_Rpt</REPORT_NAME><REPORT_TYPE>4</REPORT_TYPE><REPORT_GEN_PATH/><REPORT_LAUNCH_PHYSICAL_PATH/><REPORT_LAUNCH_VIRTUAL_PATH>Report/</REPORT_LAUNCH_VIRTUAL_PATH><SHEET><SHEET_NO>1</SHEET_NO><SHEET_NAME>Reddy_ER_2705_RRR_Rpt</SHEET_NAME><SHEET_TYPE>0</SHEET_TYPE><FUAREA_ID>1504</FUAREA_ID><DATASOURCE_TYPE>1</DATASOURCE_TYPE><DATASOURCE><DATASOURCE_ID>-1</DATASOURCE_ID><DATASOURCE_NAME>-1</DATASOURCE_NAME><PROVIDER>-1</PROVIDER><SERVER>-1</SERVER><DATABASE>-1</DATABASE><USERID>-1</USERID><USER_PASSWORD>-1</USER_PASSWORD><PORT_NO>-1</PORT_NO></DATASOURCE><SP_PARAMS_LIST/><SP_COLUMNS_LIST/><PARAM_SEQUENCE/><DRILLTHRU_PARAM><ENT_RPT><ENT_RPT_ID>1513</ENT_RPT_ID><ENT_RPT_NAME>Reddy_ER_RRR_2605_Rpt</ENT_RPT_NAME><DEFAULT>0</DEFAULT><CRITERIA><DISPLAY/><HIDDEN/></CRITERIA><COLUMN_HEADER>N</COLUMN_HEADER><DISPLAY_BUTTON>N</DISPLAY_BUTTON></ENT_RPT><ENT_RPT><ENT_RPT_ID>1514</ENT_RPT_ID><ENT_RPT_NAME>Reddy_2605_ER_Rpt</ENT_RPT_NAME><DEFAULT>0</DEFAULT><CRITERIA><DISPLAY/><HIDDEN/></CRITERIA><COLUMN_HEADER>N</COLUMN_HEADER><DISPLAY_BUTTON>N</DISPLAY_BUTTON></ENT_RPT><ENT_RPT><ENT_RPT_ID>1515</ENT_RPT_ID><ENT_RPT_NAME>Reddy_ER_2605_AAA_Rpt</ENT_RPT_NAME><DEFAULT>0</DEFAULT><CRITERIA><DISPLAY/><HIDDEN/></CRITERIA><COLUMN_HEADER>N</COLUMN_HEADER><DISPLAY_BUTTON>N</DISPLAY_BUTTON></ENT_RPT><ENT_RPT><ENT_RPT_ID>1516</ENT_RPT_ID><ENT_RPT_NAME>Reddy_ER_2705_RRR_Rpt</ENT_RPT_NAME><DEFAULT>0</DEFAULT><CRITERIA><DISPLAY/><HIDDEN/></CRITERIA><COLUMN_HEADER>N</COLUMN_HEADER><DISPLAY_BUTTON>N</DISPLAY_BUTTON></ENT_RPT><ENT_RPT><ENT_RPT_ID>100</ENT_RPT_ID><ENT_RPT_NAME>Data profile report1</ENT_RPT_NAME><DEFAULT>0</DEFAULT><CRITERIA><DISPLAY/><HIDDEN/></CRITERIA><COLUMN_HEADER>N</COLUMN_HEADER><DISPLAY_BUTTON>N</DISPLAY_BUTTON></ENT_RPT></DRILLTHRU_PARAM><ADVANCED_OPTIONS><PARAM_HTML/><PAGINATION>Y</PAGINATION><PRINTPREVIEW>N</PRINTPREVIEW><HDR_FREEZE>N</HDR_FREEZE><LAUNCH_RPT_IN_SAME_WINDOW>Y</LAUNCH_RPT_IN_SAME_WINDOW><DIGITAL_SIGNATURE><DIGITAL_SIGNATURE_FLAG>N</DIGITAL_SIGNATURE_FLAG><DS_FILE_NAME/><RPT_BASED_DS_YN>N</RPT_BASED_DS_YN><PAGE_POSITION>fp</PAGE_POSITION><X_POSITION>1</X_POSITION><Y_POSITION>2</Y_POSITION><DS_WIDTH>3</DS_WIDTH><DS_HEIGHT>4</DS_HEIGHT></DIGITAL_SIGNATURE><DIRECT_PRINT>N</DIRECT_PRINT><PRINT_DIALOG>N</PRINT_DIALOG><PASSWORD_PROT><PASSWORD>N</PASSWORD><MAIL_ENCRYPT>N</MAIL_ENCRYPT><COLUMN_NAME/></PASSWORD_PROT><FORMAT_INFO><ENABLE_USER_PREFERENCES>N</ENABLE_USER_PREFERENCES><NUMBER_FORMAT>MILLION</NUMBER_FORMAT><NUMBER_PATTERN>(1.1)</NUMBER_PATTERN><TIME_FORMAT>HH.mm</TIME_FORMAT><DATE_FORMAT>MM/dd/yyyy</DATE_FORMAT></FORMAT_INFO><ISONEPAGEPERSHEET>N</ISONEPAGEPERSHEET><XPATH_QUERY_STRING>RECORDSET/ROW</XPATH_QUERY_STRING><GENERATE>N</GENERATE><GENERATE_VALUE/><FIELD_DELIMITER/></ADVANCED_OPTIONS><REPORT_TYPE><ROW><REPORT_TYPE_NAME>XLS</REPORT_TYPE_NAME><DEFAULT_TYPE>0</DEFAULT_TYPE></ROW><ROW><REPORT_TYPE_NAME>PDF</REPORT_TYPE_NAME><DEFAULT_TYPE>Def</DEFAULT_TYPE></ROW></REPORT_TYPE></SHEET><PAGE_NUMBER_TOC_START>1</PAGE_NUMBER_TOC_START><ENABLE_TOC>N</ENABLE_TOC><DIGITAL_SIGNATURE/><DIGITAL_SIGNATURE_ALL_FLAG>N</DIGITAL_SIGNATURE_ALL_FLAG><SUBREPORTS/><CATEGORY_NAME/><MODE>1</MODE></REPORT_RUNTIME_XML>
geben Sie bitte die vollständige XML-Zeichenfolge. – Ajay2707
wie pro Frage aktualisiert, wollen Sie alle Knoten (ent_rpt) Daten? Recht – Ajay2707