با استفاده از تابع EXTRACTVALUE در MySQL یک پرسوجو بنویسید که مقدار عنصر price را از ستون xml_data در جدول products برای رکوردهایی که category = 'electronics' استخراج کند.
2.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 02:10 0.0
تابع EXTRACTVALUE در MySQL مقدار متنی یک گره XML را با استفاده از یک عبارت XPath استخراج میکند: EXTRACTVALUE(xml_fragment, 'xpath_expression'). برای این پرسوجو میتوانید از ساختاری مانند SELECT id, EXTRACTVALUE(xml_data, '/product/price') AS price FROM products WHERE category = 'electronics' استفاده کنید؛ عبارت XPath را در کوتیشن قرار دهید و در صورت نیاز نتیجه را با CAST به عدد تبدیل کنید. نکات: داده XML باید بهدرستی well-formed باشد و مسیر XPath را مطابق ساختار XML نگه دارید. در نسخههای جدید MySQL ممکن است این تابع منسوخ شده باشد—در چنین مواردی از توابع XML/JSON مناسب یا روشهای جانبی در مدیریت پایگاهداده استفاده کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
تابع EXTRACTVALUE مقدار گره XML را از xml_data با استفاده از XPath استخراج میکند و میتوانید قیمت را با '/product/price' به دست آورید. برای مثال: SELECT id, CAST(EXTRACTVALUE(xml_data, '/product/price') AS DECIMAL(10,2)) AS price FROM products WHERE category = 'electronics'. این کار در صورتی کار میکند که XML منظم باشد و مسیر XPath دقیق با ساختار XML همسو باشد. در نسخههای جدید MySQL ممکن است این تابع منسوخ شده باشد؛ در چنین مواردی از توابع XML/JSON مناسب یا روشهای جایگزین برای استخراج داده استفاده کنید.
گزارش