SQL'da Listeleme

Nickilenjelo

Kilopat
Katılım
27 Nisan 2016
Mesajlar
44
Daha fazla  
Cinsiyet
Erkek
Merhaba, SQL ile oluşturduğum table'lardan adsoyad ve dersad'ını SECIM table'ındaki OGRID ve DERSLERID'e atadığım değerlere göre çekmek istiyorum mesela seçim ilk value OGRENCILER'DEN OGRENCIID 1 OLAN DERSLER'DEN DERSID 1 olan matematiği alıyor. Son komuta kadar gayet güzel fakat istediğim şekilde listelemeyi bir türlü başaramadım, umarım anlatabilmişimdir. Şimdiden teşekkürler.

 
Son düzenleyen: Moderatör:
OGRID VE DERSLERID'DE YAZDIĞIM ŞEKİLDE ÖĞRENCİLERE DERSLERE ATASIN İSTİYORUM. SONRA BEN OGRADSOYAD VE DERSAD'INI CEKTİĞİMDE ÖĞRENCİNİN BENİM SECIM TABLOSUNDA ATADIĞIMA GÖRE VERMESİNİ.
 
Kod:
/* Öğrencilerin aldığı dersler */
SELECT dbo.OGRENCILER.OGRADSOYAD, dbo.DERSLER.DERSAD FROM dbo.SECIM
INNER JOIN dbo.OGRENCILER ON dbo.SECIM.OGRID = dbo.OGRENCILER.OGRENCIID
INNER JOIN dbo.DERSLER ON dbo.DERSLER.DERSID = dbo.SECIM.DERSLERID

/* Aynı SQL ifadenin daha optimize görünümü */
SELECT a.OGRADSOYAD, b.DERSAD FROM dbo.SECIM as c
INNER JOIN dbo.OGRENCILER as a ON c.OGRID = a.OGRENCIID
INNER JOIN dbo.DERSLER as b ON b.DERSID = c.DERSLERID

/* Örneğin Mehmet'in aldığı dersler */
SELECT b.DERSAD FROM dbo.SECIM as c
INNER JOIN dbo.OGRENCILER as a ON c.OGRID = a.OGRENCIID
INNER JOIN dbo.DERSLER as b ON b.DERSID = c.DERSLERID
WHERE a.OGRENCIID = 1

Aşağıdaki resimdeki gibi View Design editörünü kullanmayı öğrenirseniz ihtiyacınız olan birçok sorguyu, görsel olarak oluşturup, otomatik yaratılan SQL ifadesine ulaşabilirsiniz. Bu editördeki alan isimlerini ilişkili oldukları diğer tablodaki alan isminin üzerine sürükleyerek ilişki kurabilirsiniz. Başaramadım dediğiniz de bu ilişkileri kurmamanızdı.

 
Bugün okulda bu şekilde çözdük çok teşekkür ederim arkadaşlar.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…