PDA

View Full Version : درخواست یک Query



majidrezaei2007
یک شنبه 10 اردیبهشت 1391, 23:10 عصر
با عرض سلام خدمت دوستان عزیز

یک کوئری می خوام برای حذف رکورد های تکراری . توی جدولم رکورد هایی هست که فیلد id اونها یکسانه ولی بعضی فیلد های دیگش فرق می کنه که مهم نیست . حالا من یک کوئری می خوام که از اون فیلد هایی که id یکسان دارند ، فقط یک نمونه بیاره . ضمنا دستور distinct زمانی درست عمل می کنه که تمام فیلد های دو رکورد یکی باشند . اونوقت فقط یک نمونه ازش میاره . اما من می خوام که اینو بر اساس یک فیلد در نظر بگیره و اگه همون فیلد id_ یکسان بود ، فقط یک نمونه ازش نشون بده . بدون توجه به تفاوت دو رکورد در فیلد های دیگرش

هرچی گشتم چیزی به دستم نرسید . ممنون میشم راهنمایی کنید

cs_mz88
یک شنبه 10 اردیبهشت 1391, 23:48 عصر
اگه ممکنه جدولتو درست تشریح کن تا بتونیم درست بهت کمک کنیم

b2never
دوشنبه 11 اردیبهشت 1391, 07:49 صبح
SELECT test_1.id,test.nc
FROM test INNER JOIN
test AS test_1 ON test.nc = test_1.nc
GROUP BY test.nc, test_1.id
HAVING (COUNT(test.nc) > 1)


//test.id is unique field of table
//test.nc is duplicated fields

b2never
دوشنبه 11 اردیبهشت 1391, 07:50 صبح
SELECT DISTINCT Person.Code, Person.NationalCode
INTO xyz$
FROM Person INNER JOIN
Person AS Person_1 ON Person.Code <> Person_1.Code AND Person.NationalCode = Person_1.NationalCode


//Person.Code is unique field of table
//Person.NationalCode is duplicated fields

b2never
دوشنبه 11 اردیبهشت 1391, 07:51 صبح
دو کد بالا برای رکورد هاییه که حداقل یک فیلد یونیک و یک فیلد تکراری دارند . شاید به کارت بیاد . در ضمن این دستورا فقط رکورد های تکراری رو نشون میده . همشونو . واسه حذف شما باید کد جدا بنویسی

omid_csh
دوشنبه 11 اردیبهشت 1391, 10:33 صبح
سلام
-- Section 1
IF OBJECT_ID ('Temp') IS NOT NULL
DROP TABLE Temp;
Go

-- Section 2
SELECT IDENTITY(int, 1,1) AS [ID], [Sub], [Date], [Descrip]
INTO Temp
FROM News
Go

-- Section 3
SELECT t1.[ID], t1.[Sub], t1.[Date], t1.[Descrip]
FROM Temp AS t1
WHERE NOT EXISTS
(
SELECT [ID]
FROM Temp AS t2
WHERE t1.[Sub] = t2.[Sub] AND
t1.[ID] > t2.[ID]
)
GO

-- Section 4
DROP TABLE Temp;
GO
من فرض کردم که ستون یونیک نداری، و اومدم یه ستون یونیک برای جدول ساختم.
اسم ستونی که مقادیر تکراری داره Sub هستش.
موفق باشی.

majidrezaei2007
دوشنبه 11 اردیبهشت 1391, 17:44 عصر
b2never : من می خواستم که فقط یک نمونه از تکراری ها بیاره

omid_chs : ممنون ، کوئری شما جواب داد و همون خروجی که می خواستم رو داد .