none
bağlantısız tabloları birleştirme RRS feed

Yanıtlar

  • join ile olurmu bilememde;

    select * from Tablo1, Tablo2

    de birleştirir(!).


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    • Yanıt Olarak İşaretleyen mustafa3434 19 Haziran 2013 Çarşamba 20:25
    19 Haziran 2013 Çarşamba 11:58
    Moderatör
  • WITH C1 AS (SELECT ROW_NUMBER() OVER (ORDER BY Id) AS Sıra1,* FROM Tablo1),

    C2 as (SELECT ROW_NUMBER() OVER (ORDER BY Id) AS Sıra2,* FROM Tablo2)

    select *

    FROM C1

    FULL JOIN C2 ON C1.SIRA1=C2.SIRA2

    • Yanıt Olarak İşaretleyen mustafa3434 19 Haziran 2013 Çarşamba 20:25
    19 Haziran 2013 Çarşamba 15:15
  • Zaten ilişkisiz tabloları birleştirme ihtiyacından başlıyor problem. Eğer böyle bir ihtiyaç varsa bi algoritma hatasından söz edebiliriz.

    Azure arkadaşımızın verdiği örnek ilişkili alanları olmayan tablolara sorgu içinde ilişki kurulabilecek yeni alanlar eklemek ve bununla eşleştirmek şeklindedir.

    İki tablo birleştirilecekse mutlaka FK olmalıdır. 

    Bunun dışında iki ya da daha fazla sorgu sonuçları tek tabloda gösterilebilir;

    select yenialan1, yenialan2, yenialan3 from
    (
       select alan1, alan2, alan3 from Tablo1
       union
       select alan1, alan2, alan3 from Tablo2
    ) as YeniTablo


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    • Yanıt Olarak İşaretleyen mustafa3434 25 Haziran 2013 Salı 03:53
    20 Haziran 2013 Perşembe 12:56
    Moderatör

Tüm Yanıtlar

  • join ile olurmu bilememde;

    select * from Tablo1, Tablo2

    de birleştirir(!).


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    • Yanıt Olarak İşaretleyen mustafa3434 19 Haziran 2013 Çarşamba 20:25
    19 Haziran 2013 Çarşamba 11:58
    Moderatör
  • WITH C1 AS (SELECT ROW_NUMBER() OVER (ORDER BY Id) AS Sıra1,* FROM Tablo1),

    C2 as (SELECT ROW_NUMBER() OVER (ORDER BY Id) AS Sıra2,* FROM Tablo2)

    select *

    FROM C1

    FULL JOIN C2 ON C1.SIRA1=C2.SIRA2

    • Yanıt Olarak İşaretleyen mustafa3434 19 Haziran 2013 Çarşamba 20:25
    19 Haziran 2013 Çarşamba 15:15
  • teşekkürler arkadaşlar

    önay bey bu kadar basit olucağıda hiç aklıma gelmemişti :)

    19 Haziran 2013 Çarşamba 20:24
  • join ile olurmu bilememde;

    select * from Tablo1, Tablo2

    de birleştirir(!).


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    Ama bu cross join olur  ve cok yuksek sayida veri getirir.İnner joinmiş gibide yazabilrisin.

    Örneğin devaminda t1.KulId= t2.KulID dersen mesela inner joine donuşmüş olur.

    Kolay Gelsin;

    19 Haziran 2013 Çarşamba 21:16
  • ancak sizdeki gibi yada azure beydeki gibi

    FULL JOIN C2 ON C1.SIRA1=C2.SIRA2

    yada t1.Kulıd = t2.Kulıd

    demem için birbirine karşılıklı id sinin yazılmış olması gerekir,sadece merakımdan soruyorum 

    bu şekilde join o zaman olamaz dimi ?

    20 Haziran 2013 Perşembe 02:19
  • Zaten belki ömrün boyunca cok az ihtiyac nduycan cross joine cogunlukla ID eşleştirmen gerekecek.
    20 Haziran 2013 Perşembe 06:23
  • Zaten ilişkisiz tabloları birleştirme ihtiyacından başlıyor problem. Eğer böyle bir ihtiyaç varsa bi algoritma hatasından söz edebiliriz.

    Azure arkadaşımızın verdiği örnek ilişkili alanları olmayan tablolara sorgu içinde ilişki kurulabilecek yeni alanlar eklemek ve bununla eşleştirmek şeklindedir.

    İki tablo birleştirilecekse mutlaka FK olmalıdır. 

    Bunun dışında iki ya da daha fazla sorgu sonuçları tek tabloda gösterilebilir;

    select yenialan1, yenialan2, yenialan3 from
    (
       select alan1, alan2, alan3 from Tablo1
       union
       select alan1, alan2, alan3 from Tablo2
    ) as YeniTablo


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    • Yanıt Olarak İşaretleyen mustafa3434 25 Haziran 2013 Salı 03:53
    20 Haziran 2013 Perşembe 12:56
    Moderatör