• 03-03-2009, 18:31:43
    #1
    Merhaba,
    Bir tablodan diğerine kayıtları aktarmak istiyorum.
    Birinci tabloda tekbir kolon ikinci tabloda yine tekbir kolon var.
    Kolon adlarıda iki tablodada aynı.Örnek olarak "adres".
    Sorgu şu
    INSERT INTO Tablo1(adres) select adres from Tablo2 where adres NOT IN(select adres from Tablo1)
    İkinci tablodakileri birinci tabloya aktarmak istiyorum ama eğer birinci tabloda bu kayıt var ise aktarmasın istiyorum.
    Bu sorguyu "not in" değilde "in" kullanarak denedim yine olmadı.
    Sondaki wher cümlesini kullanmazsam yani
    INSERT INTO Tablo1(adres) select adres from Tablo2
    Bu şekilde çalışıyor.
    Çalışmadığı zamanlarda ise "query has executed successfully" uyarısını veriyor.
    Yardımlarınız için teşekkürler.
  • 03-03-2009, 20:15:28
    #2
    tam anlayamadım.
    bir tablodan diğerine olmayan kayıtlarımı aktarmak istiosunuz?
    yani 2 tablodaki verileri birleştirmek mi istiyorsunuz?
  • 03-03-2009, 21:32:24
    #3
    Evet iki tablodaki veriler birleştirilecek aynı olan varsa bu kayıtlardan biri yazılacak.
  • 03-03-2009, 22:22:23
    #4
    Alıntı
    insert into tablo1.sutunadi
    select sutunadi from tablo2adi
    where (select * from tablo2 ) not in (select * from tablo1)
    denermisin?
  • 04-03-2009, 09:45:18
    #5
    Kodu benim tablo ve sutun isimlerime göre düzenledim ancak aşağıdaki hatayı aldım.


    Bu arada mssql kullanıyorum.
  • 04-03-2009, 12:52:54
    #6
    Üyeliği durduruldu
    Meksikalı adlı üyeden alıntı: mesajı görüntüle
    denermisin?
    <konudisi> not in ifadesi büyük sayılı datalarda nedende mysqlde çalışmadı bende. </konudisi>
  • 04-03-2009, 14:39:49
    #7
    Diğer bir işle uğraşırken şunu farkettim not in kullanırkek 3600'den fazla kayıt döndüren bir sorgu kullanırsam çalışmıyor.
    Bunu nasıl aşabilirim.