برگزیده های پرشین تولز

جلوگیری از تکرار یک رکورد در خروجی (Distinct نیست)

Bahram.ws

Registered User
تاریخ عضویت
8 آگوست 2005
نوشته‌ها
1,132
لایک‌ها
73
سن
40
محل سکونت
On The Fly
سلام از جداول زیر میخوام یک Query به این صورت بگیرم:

با داشتن cid تمام product های مربوط به این cid گرفته شود البته تا اینجاش رو میدونم
مشکل در اینه که میخوام فقط یک عکس از جدول product_images گرفته شود چون در صورتی که یک product بیشتر از یک image داشته باشه در خروجی این product دو بار تکرار میشود

رکورد هایی که میخوام بگیرم:

products.id , products.name_en , product_categories.name_en , product_images.image


attachment.php
 

فایل های ضمیمه

  • tables.GIF
    tables.GIF
    9 KB · نمایش ها: 35

a_r3003

کاربر تازه وارد
تاریخ عضویت
11 ژانویه 2008
نوشته‌ها
3
لایک‌ها
0
با سلام

دوست گرامی شما نمی توانید به سیستم بگید فقط یکبار این فیلد Image رو بگیره
یه راهش اینه که در این Select فیلد Image رو نگیری
بعد که میخواهی توی برنامه نشون بدی با زدن یه کوئری یا با نوشتن یه SP که یک رکورد رو برمیگردونه مقدار اون فیلد رو بر اساس فیلد مشترک که ID هست در اینجا ، از جدول مربوط بخونی و اونو نمایش بدی

این بهترین راه هستش برای اینکه حجم دیتای گرفته شده پایین بیاد

امیدوارم راهنمایی ناچیز من کمکی برای شما بوده باشه
موفق باشید
 

POXER

Registered User
تاریخ عضویت
20 جولای 2011
نوشته‌ها
61
لایک‌ها
3
در تایید جواب a_r3003 زمانی که شما چند جدول را به هم متصل می کنید تمام رکورد ها می آید
مگر اینکه دستور خود را به اینگونه اصلاح کنید
کد:
Select
	Table.*,
	(Select images_url From images_table where parent_id = Table.id Limit 1) image_url
From
	Table
 

elna

کاربر تازه وارد
تاریخ عضویت
15 سپتامبر 2013
نوشته‌ها
34
لایک‌ها
3
Ban kanid MARAB,BAkoshid MARA
 
بالا