PDA

View Full Version : انتخاب چند ستون با یک group by



hamid_shrk
سه شنبه 08 فروردین 1391, 21:35 عصر
با عرض سلام
من یک جدول محصولات دارم که توش محصولاتی دارم که بعضی هاشون اسمشون یکی هست ، حالا میخوام با یک select تمام ستون های محصولاتم در جدول رو بگیرم ولی اونایی که اسمشون شبیه هم هست فقط اولیشون رو بگیرم (همون group by name) اما تو group by تمام ستون ها رو بر نمیگردونه ، چیکار کنم؟

oliya24
سه شنبه 08 فروردین 1391, 22:28 عصر
خوب دوست عزیز مشخصه که همشون نمایش داده نمیشن اگر میخوایی تکراری ها رو حذف کنی میتونی با distinct این کار رو بکنی ولی برای گوه بندی بر اساس همون مقادیری مرتب میشه که تکراریها درشون وجود نداره
اصلا شما برای چی میخواهید این کا رو انجام بدید؟؟؟؟ میشه کمی بیشتر در مورد کارتون توضیح بدید

hamid_shrk
سه شنبه 08 فروردین 1391, 22:59 عصر
اینکار رو برای یک فروشگاه آنلاین میخوام انجام بدم .
محصولاتی دارم که بعضی هاشون اسمشون باهم یکی هست ولی خوب ویژگی های دیگه ای دارند که باهم فرق میکنه ، ولی من تو یک مورد از select هام میخوام از هر محصولی فقط یکیش رو بیارم :
این سایت رو ببینید :
http://irkaspersky.com/e-store
این سایت رو خودم نوشتم اما چون تو شرکت اینکار رو انجام دادم درست یادم نیست چطوری دستورش رو نوشتم ...
تو این صفحه از هر محصول فقط یکیش نشون داده میشه،مثل kaspersky pure که تو دیتابیس 20 تا محصول با این اسم هست ولی فقط یکیش رو میاره.
من اینکار رو با group by کردم ولی بادم نمیاد چطوری .
distinct رو الان تست کردم درست نشد.

hamid_shrk
سه شنبه 08 فروردین 1391, 23:43 عصر
دوستان ممنون درست شد :

SELECT dbo.AntiVirusProduct.*, dbo.Product.*
FROM (SELECT min(idProduct)AS idProduct,[name] FROM product GROUP BY [name])AS PR INNER JOIN
dbo.AntiVirusProduct ON PR.idProduct=dbo.AntiVirusProduct.idAntiVirusProdu ct INNER JOIN
dbo.Product ON dbo.AntiVirusProduct.idAntiVirusProduct = dbo.Product.idProduct

WHERE idBrandFK=@idBrandFK AND isRenew='False' AND active='true'