array in database

پرسیده شده
فعالیت 940 روز پیش
دیده شده 471 بار
0

سلام من یه مشکلی توی گرفتن اطلاعاتی که به سورت یک ارایه سریالایز سده هستند دارم.

فرض کنید من یک جدول دارم که یکی از ستون هاش اطلاعات رو به صورت ارایه در خودش ذخیره میکنه 

و یکی از کلید های این ارایه ها که توی اون ستون ذخیره میشن و بین همه دیتا ها ثابته این کلید مثلا قیمت هستش یکی از کلید های اون آرایه.

حالا من چطور میتونم اطلاعات جدول رو بر اساس اون کلید ارایه (قیمت) دریافت کنم 

مثال

همه اطلاعات دیتاها از اون جدول جایی که اون کلید ارایه(قیمت) بین 1000 تا 5000

 

ایشالله متوجه مشکلم شدین

در کل میشه دریافت اطلاعات از دیتا بیس جایی که مقادیر به صورت ارایه سریالایز شده ذخیره شدن.

فایل پیوست

محمد خضرپور
محمد خضرپور

4 مهر 00

0
حذف شده

سلام و احترام

میتونید از تابع array_map استفاده کنید. لطفا خود آرایه رو هم قرار بدید تا بدونم ساختارش به چه شکله یه نمونه بنویسیم

فایل پیوست

امیر صالحی

توسط

امیر صالحی

4 مهر 00

0
حذف شده

اقای صالحی ببخشید فک کنم اشتباه متوجه شدید مشکل من کویری زدن به دیتا بیس هست من عکس جدول  توی دیتابیس رو پیوست میکنم از این جدول من postd ها رو میخام که توی meta-value که یک ارایه است مقدار متا ولیو و یک کلیدی داره به اسم price ارایه به این شکل (a:2:{s:5:"price";s:7:"3200000";s:10:"last_price";s:6:"120000";})

 

حالا من چطور کویری بزنم که همه پست ایدی هایی رو بگیرم که مقدار price توی این ارایه مقدار خاصیه

 

 

فایل پیوست

محمد خضرپور

توسط

محمد خضرپور

4 مهر 00

0
حذف شده

queryش میشه یه همچین چیزی تقریبا، اگه امکانش هست از دیتابیستون یه export بگیرید تا من بتونم query رو روش ران کنم 

 

SELECT *
FROM wp_postmeta
WHERE meta_key="prices" and JSON_EXTRACT(meta_value, "$.price") BETWEEN  1000 and 5000
فایل پیوست

امیر صالحی

توسط

امیر صالحی

4 مهر 00

0
حذف شده

سلام.

به این شکل میتونید عمل کنید:

SELECT *, SUBSTRING_INDEX(SUBSTRING_INDEX(SUBSTRING_INDEX(wp.meta_value, '";', -4), '";', 1), ':"', -1) AS price FROM wp_postmeta AS wp HAVING price = 3200000
فایل پیوست

محسن موحد

توسط

محسن موحد

8 مهر 00