PDA

View Full Version : join چند جدول و حذف تکراری ها بر اساس یک فیلد



mojtaheri
سه شنبه 11 آبان 1389, 17:35 عصر
سلام .من بین چند جدول join زدم که چندتا از رکوردها مقدار فیلد شماره یک مشترک دارند .من می خوام ببینم راهی داره که فقط رکورد اولی رو نمایش بدم؟

ایمان مدائنی
سه شنبه 11 آبان 1389, 21:24 عصر
شما ميتوني بعد از كلمه SELECT كلمه DISTINCT رو بزاري كارش اينه كه تكراري ها رو يكي نشون ميده

حمیدرضاصادقیان
چهارشنبه 12 آبان 1389, 08:06 صبح
شما ميتوني بعد از كلمه SELECT كلمه DISTINCT رو بزاري كارش اينه كه تكراري ها رو يكي نشون ميده

سلام.خیر با روش شما رکوردهای تکراری که ازمجموع Join بدست می آیند رو حذف میکنه وگرنه ممکنه ترکیب دو فیلد تکراری نباشه و بازهم همه مقادیر یک رو نمایش میده.

یک راه این هست در زمان JOIN اگر جدول Detail شما دارای یک فیلد ردیف نیز بود در شرط مقدار اونو با یک کنترل کنید.فرض کنید مثلا برای فاکتور فروش جدول هدر از شماره 1 تا 100 داره جدول ریز فاکتور نیز برای هر فاکتور از شماره 1 تا 10 داره با روشی که گفتم فقط ردیفهای اول هر فاکتور نمایش داده میشه.
اگر ساختار جداول رو بنویسید راحتتر میشه کوئری اونو نوشت.
درضمن از چه نسخه ای استفاده میکنید؟

mojtaheri
چهارشنبه 12 آبان 1389, 08:40 صبح
ببینید من یک جدول محصولات دارم و یک جدول قیمت محصولات.توی جدول محصولات ممکنه یک کالا دو قیمت داشته باشه.وقتی join میشه طبیعتا نتیجه دارای حداقل دو کد محصول تکراری هستش.من می خوام اولین قیمت رو بیاره
من از sql2005 استفاده می کنم و C#