سلام من یه مشکلی توی گرفتن اطلاعاتی که به سورت یک ارایه سریالایز سده هستند دارم.
فرض کنید من یک جدول دارم که یکی از ستون هاش اطلاعات رو به صورت ارایه در خودش ذخیره میکنه
و یکی از کلید های این ارایه ها که توی اون ستون ذخیره میشن و بین همه دیتا ها ثابته این کلید مثلا قیمت هستش یکی از کلید های اون آرایه.
حالا من چطور میتونم اطلاعات جدول رو بر اساس اون کلید ارایه (قیمت) دریافت کنم
مثال
همه اطلاعات دیتاها از اون جدول جایی که اون کلید ارایه(قیمت) بین 1000 تا 5000
ایشالله متوجه مشکلم شدین
در کل میشه دریافت اطلاعات از دیتا بیس جایی که مقادیر به صورت ارایه سریالایز شده ذخیره شدن.
سلام و احترام
میتونید از تابع array_map استفاده کنید. لطفا خود آرایه رو هم قرار بدید تا بدونم ساختارش به چه شکله یه نمونه بنویسیم
اقای صالحی ببخشید فک کنم اشتباه متوجه شدید مشکل من کویری زدن به دیتا بیس هست من عکس جدول توی دیتابیس رو پیوست میکنم از این جدول من postd ها رو میخام که توی meta-value که یک ارایه است مقدار متا ولیو و یک کلیدی داره به اسم price ارایه به این شکل (a:2:{s:5:"price";s:7:"3200000";s:10:"last_price";s:6:"120000";})
حالا من چطور کویری بزنم که همه پست ایدی هایی رو بگیرم که مقدار price توی این ارایه مقدار خاصیه
queryش میشه یه همچین چیزی تقریبا، اگه امکانش هست از دیتابیستون یه export بگیرید تا من بتونم query رو روش ران کنم
SELECT *
FROM wp_postmeta
WHERE meta_key="prices" and JSON_EXTRACT(meta_value, "$.price") BETWEEN 1000 and 5000
سلام.
به این شکل میتونید عمل کنید:
SELECT *, SUBSTRING_INDEX(SUBSTRING_INDEX(SUBSTRING_INDEX(wp.meta_value, '";', -4), '";', 1), ':"', -1) AS price FROM wp_postmeta AS wp HAVING price = 3200000