öncelikle mevcut sistemimden bahsetmek gerekirse liste: ______id_____|_____ad_____|_______soyad______| ______1______|___hasan____|_______yılmaz______| ______2______|___hasan____|_______soylu_______|
şeklindeki verileri SELECT id, ( ad + ' ' + soyad) AS tamAd FROM liste komutu ile alıp combobox'a value olarak id değerini, gösterim elemanı olarak da tam adı yazdırabiliyorum. ancak yukardaki örnekte görüldüğü gibi isimler yada soyadlar tekrarlandıklarında yine alan işgal ediyorlar, bunu önlemek için de isim ve soyadları ayrı bir tabloda sınıflandırmak istiyorum karakterler: ______id______|__karakterler_| ______1______|____hasan____| ______2______|___yılmaz____| ______3_____|_____soylu_____|
yeni liste: ______id_____|_____ad_____|____soyad______| ______1______|______1____|_______2_______| ______2______|______1____|_______3_______|
şekline gelecek ancak bu noktada nasıl bir sorgu ile yukardaki sorguyla aynı işlem yapılabilir bilmiyorum. paylaşanlara şimdiden teşekkürler
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.
Bir türlü tam olarak hatırlayamadım, bir kaç ay ilgilenmeyince hemen unutmuşum. Şuna benzer bir şekilde yapılacağını biliyorum ama bir türlü olması gereken doğru kodu yazamadım.
Burada 3 tane tablon olduğunu düşünüyoruz. Yeniliste tablosunu zaten en etkin şekilde kullanacaksınız buna sorgunun içinde A takma ismini veriyoruz. isimlerin yazılı olduğu tablo : bu tablonun adı isimler takma ismi ise B soyisimlerin yazılı olduğu tablo : bu tablonun adı soyisimler takma ismi ise C
WHERE bölümünde sorgumuzdan gelecek rakamların isimler tablosundaki hangi isme karşılık geleceğini belirtiyoruz. Dediğim gibi bu sorgu doğru değil ancak buna benzer bir şekilde yapılması lazım.
Birde iç içe sorgular yazma tekniği var ama o burada kullanılmaz galiba. Kafam karman çorman oldu, belki daha sonra tekrar ilgilenmeliyim.
bahsettiğiniz kodlarda ad ve soyadın farklı tablolarda olduğu varsayılmış ama ben ad ve soyadın aynı tablo altında saklanmasının daha faydalı olacağını düşünüyorum, ad ve soyadın aynı tablodaki haliyle yol gösterebilirseniz sevinirim.
Tamam yapmak istediğinizi daha iyi anladım. Kod yine buna benzeyecek ama bu işi bilen bir arkadaş baksa daha iyi olur.
Çünkü benim yaptığım yanlış, yanlış olduğunu iyibiliyorum ama doğrusunu yazabilecek kadar hatırlayamıyorum şu an.
Yukarıdakini birden çok tabloyla çalışmanın mantığı gibi düşünebilirsiniz, doğrusunu şu an yazamadığım için çok saçma şeyler çıkıyor ortaya.
Birde bu var.
SELECT A.id, (SELECT karakter FROM karakterler B WHERE A.ad=B.id) As ADI , (SELECT karakter FROM karakterler B WHERE A.soyad=B.id) As SOYADI FROM yeniliste A
Galiba bu şekilde olacak, bu sefer kalınla işaretlediğim yerlerde ad ve soyadı ayrı ayrı belirttiğim için daha mantıklı gözüktü gözüme.
liste:
______id_____|_____ad_____|_______soyad______|
______1______|___hasan____|_______yılmaz______|
______2______|___hasan____|_______soylu_______|
şeklindeki verileri SELECT id, ( ad + ' ' + soyad) AS tamAd FROM liste
komutu ile alıp combobox'a value olarak id değerini, gösterim elemanı olarak da tam adı yazdırabiliyorum.
ancak yukardaki örnekte görüldüğü gibi isimler yada soyadlar tekrarlandıklarında yine alan işgal ediyorlar, bunu önlemek için de isim ve soyadları ayrı bir tabloda sınıflandırmak istiyorum
karakterler:
______id______|__karakterler_|
______1______|____hasan____|
______2______|___yılmaz____|
______3_____|_____soylu_____|
yeni liste:
______id_____|_____ad_____|____soyad______|
______1______|______1____|_______2_______|
______2______|______1____|_______3_______|
şekline gelecek ancak bu noktada nasıl bir sorgu ile yukardaki sorguyla aynı işlem yapılabilir bilmiyorum.
paylaşanlara şimdiden teşekkürler
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.