Tôi đang cố gắng phân tích cú pháp một trường XML là một phần của cơ sở dữ liệu SCOM 2007 Data Warehouse và đã tìm thấy nhiều ví dụ hiển thị các kịch bản tương tự như vậy. khi tôi chạy truy vấn nó lỗi. Dưới đây là một ví dụ, một hàng ngàn hoặc hơn tôi cần phải chạy điều này chống lại, nơi tôi muốn kéo trong các giá trị Anh và Vương quốc Anh (GUID của bao gồm các thẻ là phù hợp cho từng loại dữ liệu vì vậy không bao giờ thay đổi và có thể được sử dụng để truy vấn v.v.). Tất nhiên mỗi hàng có một mã thành phố và quốc gia khác nhau và đó là những gì tôi muốn nắm bắt.Truy vấn SQL để phân tích cú pháp trường XML và truy xuất các giá trị
Tên bảng là dbo.ManagedEntityProperty và tên cột là PropertyXML
<Root>
<Property Guid="AFB4F9E6-BF48-1737-76AD-C9B3EC325B97">192.168.1.0</Property>
<Property Guid="5C324096-D928-76DB-E9E7-E629DCC261B1">WASPDC01.LIV10.Local</Property>
<Property Guid="96981E2D-DECF-7CB7-DEC5-5C52046B68A6">192.168.1.0</Property>
<Property Guid="FA3887C3-F274-306A-867C-37105A190F78">England</Property>
<Property Guid="61AA7309-595F-576E-337E-E9335E5CA773">255.255.255.0</Property>
<Property Guid="F8ABF27F-A169-6FCD-1862-C06F1DB4BF24">UK</Property>
<Property Guid="B832B2DE-A649-60A1-AC13-06F1EC601E5F">Active</Property>
</Root>
Bất kỳ lời khuyên hay hướng dẫn? Tôi đã cố gắng thực hiện lời khuyên theo SQL Server query xml attribute for an element value nhưng tôi vẫn còn rất nhiều trong thời gian truy vấn SQL XML của tôi và chưa bao giờ phải làm điều gì đó như thế này trước đây.
Brilliant, rea phản ứng nhanh chóng ở đó và nó hoạt động rất tốt. Chỉ cần tinh chỉnh phần khai báo khi tôi đang sử dụng SQL 2005, nhưng đó là lỗi của tôi vì tôi không nói cho bạn biết phiên bản :) – user2215800
Nếu tôi muốn hiển thị đầu ra, hai giá trị XML trong cùng một hàng nhưng các cột khác nhau Tôi sẽ làm thế nào? Tôi đang cố gắng để có được đầu của tôi xung quanh '(.)' Và làm thế nào tôi có thể thay đổi hành vi kịch bản này để có lẽ nhắm mục tiêu mỗi GUID riêng biệt thay vì liệt kê tất cả sau đó lọc. Biết ý tôi là gì? – user2215800
@ user2215800: đã cập nhật phản hồi của tôi –