• Anasayfa
  • Hakkımızda
  • Etkinlikler
  • Destek Verin
  • Site Haritası
  • Giriş Yap
  • Üye Ol
  • Facebook
  • Twitter
  • RSS
Yazılım Dilleri
  • Soru - Cevap
  • EĞİTİM SETİ
  • KATEGORİ
  • DUYURU
  • TEKNOLOJİ HABERLERİ

Son Sorular

  • 23.04.2016 00:55:33C programlama 2 oyun
  • 20.04.2016 16:34:41Local Database
  • 15.04.2016 14:26:15Fatura kayıt işlemi
  • 21.03.2016 01:55:30C# problem

Popüler Sorular

  • 27.05.2012 05:49:50Asp.Net ile Date time alana veri ekleyemiiyorum ?
  • 2.04.2012 00:45:18.exe uzantılı dosya için dijital imza nerde nasıl alınır.
  • 12.05.2012 08:44:49Acil Yardım
  • 27.05.2012 13:46:51veri tabanı bağlantısı
  • .Net Framework
  • 8085 Assembly
  • Active Directory
  • ADO.NET
  • Android
  • Apple IOS
  • Arduino
  • ASP.NET
  • ASP.NET MVC
  • Blackberry
  • C#.Net
  • C++
  • CCG Framework
  • CISCO
  • CSS
  • Diğer
  • Dreamweaver
  • Entity Framework
  • Exchange Server
  • Gömülü Sistemler
  • GSM Programlama
  • Güncel
  • Güvenlik
  • HTML5
  • Java
  • Javascript / JQuery
  • Jira
  • Kariyer ve İş Yaşamı
  • LINQ
  • LibreOffice
  • Linux
  • Matlab
  • Microsoft Dynamics CRM
  • Mobil Uygulama Geliştirme
  • MySQL
  • NoSQL
  • Oracle
  • OWIN
  • PFSense
  • PHP
  • Powershell
  • Python
  • Sanallastirma
  • SAP-ABAP
  • SCOM 2012
  • SEO
  • Sharepoint 2010
  • Sharepoint 2013
  • Silverlight
  • Sistem Analiz ve Tasarımı
  • SQL Server
  • Symantec
  • TFS
  • T-SQL
  • Ubuntu
  • VB.NET
  • Veritabanı Yönetim Sistemleri
  • Visual Studio
  • VMware
  • WCF
  • Web Hosting
  • Windows 8
  • Windows Azure
  • Windows Phone 7.1
  • Windows Phone 8
  • Windows Server
  • Wordpress
  • WPF
  • Xamarin
  • XNA
  • Yazılım Mühendisliği
  • Yöneylem Araştırması
  • ASP.NET MVC
  • Entity Framework
  • Javascript / JQuery
  • LINQ
  • PHP

Son Duyurular

IPhone 6 ve IPhone 6 Plus Teknik Özellikleri ve Fiyatı

IPhone 6 ve IPhone 6 Plus Teknik Özellikleri ve Fiyatı

DELL'in Yeni Projesi: USB Bilgisayar (Project Ophelia)

DELL'in Yeni Projesi: USB Bilgisayar (Project Ophelia)

Windows Phone Youtube Uygulaması Google ve Microsoft ile Yeniden Yapılıyor

Windows Phone Youtube Uygulaması Google ve Microsoft ile Yeniden Yapılıyor

Android ve Apple IOS Telefonlar için Blackberry Messenger (BBM)

Android ve Apple IOS Telefonlar için Blackberry Messenger (BBM)

Nokia Lumia 925 Teknik Özellikleri, Lumia 928 ve 920 ile Karşılaştırması

Nokia Lumia 925 Teknik Özellikleri, Lumia 928 ve 920 ile Karşılaştırması

LG Optimus G Pro Özellikleri ve Gözle Video Oynatma Teknolojisi

LG Optimus G Pro Özellikleri ve Gözle Video Oynatma Teknolojisi

SQL Server ve Join İfadesi

Bu makalede birbirinden farklı iki makalenin birbirleriyle bağlanma şekillerini göreceğiz. Join ifadesiyle iki kümenin kartezyen çarpımlarından tutun da kesişimlerine kadar birleşimini alabilirsiniz.

04.01.2013

Yazar: Serkan Yarbaş (Google+)

Kategori: SQL Server

3507

Join ifadesini en güzel aşağıdaki resim anlatmaktadır diye düşünüyorum.

Join ifadeleri :

  • Left join
  • Right join
  • Inner join
  • Full outer join

olmak üzere 4 şekilde kullanılır. Sadece "join" ifadesi kullanılırsa "inner join" 'in yaptığı işlem yapılmış olur.

 

 Sql Joins

 

 

Aşağıdaki sorgu Kategoriler ile Ürünler tablosundaki verilerin kesişimlerinin çıktısını verir.

 

select * from Categories as c
inner join Products as p on p.CategoryID = c.CategoryID

 

Satışlarla ilgili bir rapor çıkrınız. ürünün adı,şu anki fiyatı satıştaki fiyatı,şu anki stoğu kaç adet satıldığı

 

select p.ProductName,p.UnitPrice,p.UnitsInStock,od.Quantity,od.UnitPrice from [Order Details] asod
inner join Products as p on od.ProductID = p.ProductID

 

Ürünlerin tedarikçi firma adı,iletisim adı,adres,telefon ve fax bilgileri ile listeleyiniz.

 

select p.ProductName,s.CompanyName,s.ContactName,s.Address,s.Phone,s.Fax from Products as p innerjoin Suppliers as s
on p.SupplierID = s.SupplierID

 

Hangi kategoride hangi üründen kaç adet satılmıştır?

 

select p.ProductName,c.CategoryName,SUM(od.Quantity) from Categories as c inner join Products as pon p.CategoryID=c.CategoryID
inner join [Order Details] as od on od.ProductID = p.ProductID group byp.ProductName,c.CategoryName order by SUM(od.Quantity) desc

 

Müşterilerin hangi kategoride kaç dolarlık alışveriş yaptığını raporlayınız.

 

select ca.CategoryName,cu.CompanyName,SUM(od.Quantity*od.UnitPrice) from Categories as ca
inner join Products as p on ca.CategoryID = p.CategoryID
inner join [Order Details] as od on od.ProductID=p.ProductID
inner join Orders as o on o.OrderID = od.OrderID
inner join Customers as cu on cu.CustomerID = o.CustomerID group by ca.CategoryName,cu.CompanyName

 

Outer join -> Sorgu tablolarından birindeki tüm verilerin gelmesi ve diğerindeki eşleşen verilerin
gelmesini sağlamak için kullanılır.inner join sadece eşleşen kayıtları getirir,outer join bu eksikliği gidermek içindir.
Right->sonra yazılan tablonun yani bağlanan tablonun tüm kayıtlarının eşleşmese bile gelmesini sağlar
Left-> önce yazılan tablonun tüm kayıtlarının eşleşmese bile gelmesini sağlar
Full-> önceki ve sonraki iki tablonun da tüm kayıtlarının gelmesini sağlar

Outer Join’lerde outer kelimesi yazılmadan da kullanılabilir.Eğer sadece Join yazılırsa bu inner join olarak kabul edilir.

 

select * from Categories as c
left outer join Products as p on p.CategoryID=c.CategoryID
order by c.CategoryName

 

select * from Categories as c
right outer join Products as p on c.CategoryID = p.CategoryID

 

select * from Categories as c
full outer join Products as p on p.CategoryID = c.CategoryID

 

Müşterilerin alışveriş yaptığı tarihleri listeleyin hiç alışveriş yapmamışsa dahi müşteri gözüksün.

 

select c.CompanyName,o.OrderDate from Customers as c
left outer join Orders as o on c.CustomerID = o.CustomerID order by o.OrderDate

 

 

İşte bu kadar =) umarım beğenirsiniz. Join ifadeleri ilk kullanımlarda mantığınıza oturmayabilir. O yüzden resimdeki kümeleri incelemenizde fayda vardır.

Yazar Hakkında

Serkan Yarbaş

Serkan Yarbaş

serkanyarbas.com

Dumlupınar Üniversitesi Bilgisayar Mühendisliği 2012 mezunuyum. Şu anda Veripark'ta çalışmaktayım. Mesleğimi seviyorum :)

Sosyal Medya

ORANLAR

  • 3507izleme

Arkadaşlarınla Paylaş

  • Tweet

0 Yorum

Yorum Yaz / Soru Sor

Lütfen yorum yazmak veya soru sormak için üye girişi yapınız.

Son Yorumlar

  • Hocam Link başka sayfaya yönlendiriyor.
  • merhaba benim merak ettiğim bir konu var y...
  • Merhaba download linki çalışmıyor. Rica et...
  • Nevzat Bey selamlar, Açıkçası bizler a...
  • Parametreleri Cache İşleminden Yalıtma kon...

En Güncel Sorular

  • Bilgilendirme maili (C#.Net)
  • Power Pivot (Sharepoint 2010)
  • BigInteger, BigDecimal (Asp.Net ve Asp.Net MVC)
  • visual C# ile asp nette veritabanı islemleri (Asp.Net ve Asp.Net MVC)
  • Share Point ile Dosya Arşiv Yönetim Sistemi yapılabilir mi ? (Sharepoint 2010)

En Son Cevap Verilen Sorular

  • Bilgilendirme maili
  • BigInteger, BigDecimal
  • visual C# ile asp nette veritabanı islemleri
  • Share Point ile Dosya Arşiv Yönetim Sistemi yapılabilir mi ?
  • txt dosyasına veri yazma

Twitter

Takip et: @yazilim_dilleri

En Çok Okunanlar

Elif BAYRAKDAR

C# ile SQL Server Bağlantısı, Insert, Update ve Delete Sorguları

23.05.2013

  • 120154
  • 0
Hakan Keskin

C# ile Windows Service Projesi Oluşturma, Debug Etme ve Setup Hazırlama

17.12.2013

  • 65271
  • 0
batuhan avlayan

Php - Mail Gönderme (İletişim Formu)

02.09.2013

  • 48392
  • 0

Sponsorlar

KODLAB
Pluralsight
Exchange server is
Office 365
YAZILIM DİLLERİ
Yukarı Çık
  • Hakkımızda
  • Facebook
  • Twitter
  • RSS

© Yazılım Dillerinin Buluşma Noktası | Kaynak belirtildiği sürece makaleler kopyalanabilir.
YazilimDilleri.Net sitesinde yer alan kullanıcıların oluşturduğu tüm içeriklerin yayınlanması ile ilgili yasal yükümlülükler içeriği oluşturan kullanıcıya aittir, YazilimDilleri.Net hiçbir şekilde sorumlu değildir.

Kapat

Giriş Yap

Kullanıcı Adı

Şifre

Şifremi Unuttum

KULLANICI GİRİŞİ