سلام من میخوام سه تا جدول باهم ادغام کنم ایا میشه
[category]( [ID_category] [int] IDENTITY(1,1) NOT NULL, [name_category] [nvarchar](50) NULL, [rate_category] [int]
[post_category]( [ID_postcategory] [int] IDENTITY(1,1) NOT NULL, [ID_posts] [int] NULL, [ID_category] [int]
[post]( [ID_post] [int] IDENTITY(1,1) NOT NULL, [title_post] [ntext] NULL, [toptitle] [ntext] NULL, [text_post] [ntext] NULL, [state] [nvarchar](20) NULL, [summary] [nvarchar](550) NULL, [img_post] [nvarchar](50) NULL, [statecommend_post] [nvarchar](20) NULL, [date] [nvarchar](50) NULL, [time] [nvarchar](50) NULL, [reporter_post] [nvarchar](50) NULL, [number_comments] [int] NULL, [url_post] [nvarchar](250) NULL, [colorpost] [nchar](30) NULL, [view_post] [int] NULL, [text_state] [nvarchar](50) NULL, [text_command] [nvarchar]
من از کوئری استفاده میکنم ولی یه مشکل که داره اینه اگه 3تا مطلب داشته باشیم هر مطلب رو 3بار نشون میده و اگه 4 تا مطلب داشته باشیم هر مطلب رو4بار نشون میده
SELECT dbo.category.ID_category, dbo.category.name_category, dbo.post.ID_post, dbo.post.img_post, dbo.post_category.ID_posts, dbo.post_category.ID_category AS Expr1, dbo.post.state FROM dbo.category INNER JOIN dbo.post_category ON dbo.category.ID_category = dbo.post_category.ID_category CROSS JOIN dbo.post
از Distict استفاده کنید
List<LinqTest> uniqueIDs = myList.Distinct().ToList();
چه جور باید داخل کوئری خودم استفاده کنم یا جایی دیگه
اگه امکان داره با کوئری خودم نمونه بزار
SELECT DISTINCT dbo.category.ID_category, dbo.category.name_category, dbo.post.ID_post, dbo.post.img_post, dbo.post_category.ID_posts, dbo.post_category.ID_category AS Expr1, dbo.post.state FROM dbo.category INNER JOIN dbo.post_category ON dbo.category.ID_category = dbo.post_category.ID_category CROSS JOIN dbo.post
این اخطار میده
The ntext data type cannot be selected as DISTINCT because it is not comparable.
اقای مدائنی میشه یه کوئری خودت بهم بدی و یا راه حلی دیگری
ما از جداول و ستون های شما خبر ندارم
برای حذف مقادیر تکراری باید از Distinct یا GroupBy استفاده کنید
راجب این دو در گوگل سرچ کنید تا بتونید کوئری را بنویسید
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)