PDA

View Full Version : حذف برخی از رکورد های جدول با استفاده از Query



computer _ student
چهارشنبه 23 آذر 1390, 07:20 صبح
سلام
سوال اول:
چطور میشه از دستور select و delete به طور ترکیبی استفاده کرد و رکورد هایی از جدول را که شرط خاصی دارند حذف کرد؟
سوال دوم:
چطور میشه رکورد های تکراری جدول را حذف کرد؟ (راهنمایی استاد: باید جدول را بر اساس تمامی فیلد هایش گروه بندی کنیم و سپس از هر گروه تنها یک رکورد را انتخاب کنیم.
یا رکورد اول با استفاده از دستور keep first
یا رکورد آخر با استفاده از دستور leep last )
در مورد این دو دستور هم اطلاعات زیادی ندارم.

computer _ student
چهارشنبه 23 آذر 1390, 10:55 صبح
یک نمونه دستور delete شرطی پیدا کردم
اما یک مشکل دارم substr دقیقا چه کاری را انجام میده؟
delete from t
where substr( docid, 1,6 ) in (select substr( docid, 1, 6 )
from t
where status_id not in (203,204))

اعداد 1 و 6 توی این مثال برای چی استفاده شده؟
یک مدل از دستور keep

SELECT (http://psoug.org/definition/SELECT.htm) DEPTNO, ENAME ,SAL
MIN (http://psoug.org/definition/MIN.htm)(sal) KEEP (DENSE_RANK (http://psoug.org/definition/DENSE_RANK.htm) FIRST ORDER_BY (http://psoug.org/definition/ORDER_BY.htm) sal) OVER (PARTITION BY deptno) "Lowest"
FROM (http://psoug.org/definition/FROM.htm) EMP
ORDER BY (http://psoug.org/definition/ORDER%20BY.htm) deptno, sal;
اگر کسی علمی تر و دقیق تر میتونه این دستورات را توضیح بده کمک کنه. مرسی