نقل قول: مشکل با distinct
اگر کسی از دوستان می دونه لطفا راهنمایی کنه.
نقل قول: مشکل با distinct
فلسفه distinct چیز دیگری است و مربوط به مشکل شما نمی شود. distinct روی رکوردها اعمال می شود و رکورد تکراری را در خروجی نمایش نمی دهد.ضمن آنکه اگر ساختار بانک شما نرمال باشد حتما دلیلی برای تکرار فیلد col1 وجود دارد.
شما باید به صورت علمی به مسئله نگاه کنید و هر گاه متوجه شدید که کدام مقدار col1 را به ازای باقی فیلدها نیاز دارید با دستوراتی مانند Group By , ویا توابع max , sum ... و اعمال آنها روی فیلد مورد نظر خروجی مورد نظر خود را تولید کنید.
نقل قول: مشکل با distinct
در جدول مقدار col1 تکراری است. و به ازای هر مقدار از col1 در col2 نیز مقداری وجود دارد.
col1 col2
a 4
a 5
a 8
b 6
حالا من می خواهم خروجی query شامل یک a و تمام مقادیر متناظرش در col2 باشد(4-5-8).
نقل قول: مشکل با distinct
شما می توانید بنویسید مثلا
(select col1,max(col2
from Tbl1
Group by Col1
و یا دستورات دیگر اما باز لازم است بگویم طراحی جداول خود را بازنگری کنید.چون درج رکورد تکراری بر خلاف قواعد نرمال سازی است. و اگر بانک نرمال باشد به چنین مشکلی بر نمی خورید.
موفق باشید.
نقل قول: مشکل با distinct
خیلی ممنون از جوابتون.
با این روش می توان این کار را کرد ولی در برنامه مقداری را که در max می نویسم را نمی گیرد. احتمالا باید در بخش مربوط به asp.net این مشکل را پیگیری کنم.