Anasayfa / Sql Kurs / Sql Aynı Olan Tekrarlı Kayıtları Silmek

Sql Aynı Olan Tekrarlı Kayıtları Silmek

Sql Aynı Olan Tekrarlı Kayıtları Silmek


Aynı tablo içindeki iki değeri karşılaştırıp match etmek için ;

SELECT S.meyve,S.fiyat,S.musteri,M.siparisverenno
FROM SIPARIS S
JOIN SIPARIS M ON S.musteri = M.siparisverenno where meyve =?elma?

Görüldüğü gibi aynı tablodaki birbirinden farklı satırları birbirleriyle karşılaştırıp koşullu olarak listeleyebiliriz.Bunları yaparken dikkat etmemiz gereken tek şey karşılaştırdığımız iki satırın veri türleri (data type) birbirlerine uymasıdır.Eğer boş tablo geliyorsa birbirleriyle eşleşen kayıt yada verdiğiniz koşulu yerine getiren kayıt bulunmamaktadır.

Join ifadesinin çalışma şekli normalde iki veya daha fazla tablodan farklı bilgileri göstermesini sağlamak.

2 ve Daha Fazla Tablo ile Join

SELECT P.ADI,P.SOYAD,M.AVANS.B.DEVAMSIZLIK
FROM PERSONEL P INNER JOIN MUHASEBE M ON P.ID = M.ID INNER JOIN BILGI B ON B.ID = P.ID

2 farklı birbirbiriyle ilişkisi olmayan tabloda join kullanılabilir. Farklı tabloları kendileri ile join yapıp araya union ifadesi koymak yeterli.

?-
SELECT S.meyve,S.fiyat,S.musteri,M.siparisverenno
FROM SIPARIS S
JOIN SIPARIS M ON S.musteri = M.siparisverenno

Union

SELECT O.Alis,O.Satis,O.Kar,
FROM Order O
JOIN Order O2 ON O.musteri = O2.siparisverenno

?-

gibi
Sql Tablo içerisinde birden fazla kaydı silmek ?

sql içerisinde bir tabloda birden fazla kayıt silmek için in ifadesini kullanırız in ifadesi parentezle birlikte kullanılır in() parentez içerisine işlem yapmak istediğiniz bilgileri,Id numarasını girip kullanabiliriz.Delete işleminide bu şekilde yapacağız ;

delete from personel where ID in(3,4,5)
Bazen bir tablo içerisindeki sütun ve sütunlarda mükkerrer(birden fazla aynı kayıt) olanları otomatik olarak silme ancak birden fazla kayıtları biz müdahale edemeden satır satır verileri okuyup karşılaştırıp aynı olanları sileceğiz.

RowCount 1den fazla aynı olan kayıtları sildiriyoruz

set rowcount 1
select kod from total4
while @@rowcount>0
delete total4
where 1<
(select count(*) from total4 u2
where total4.kod = u2.kod)
set rowcount 0

iyi çalışmalar.

Ayrıca Buna Bakabilirsiniz

TRANSACTION Nedir

TRANSACTION Nedir ? Transaction Ne işe yarar ? Bir veya daha fazla SQL ifadeleri tek …

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir