<?xml version="1.0" encoding="utf-8"?> <rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" ><channel><title>Muzaffer AKYIL (Victorious) &#187; join</title> <atom:link href="http://muzaffer.akyil.net/tag/join/feed" rel="self" type="application/rss+xml" /><link>http://muzaffer.akyil.net</link> <description></description> <lastBuildDate>Tue, 08 Mar 2011 09:18:58 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=</generator> <item><title>Inner, Outer, Left, Right, Cross(Full) Join Nedir ?</title><link>http://muzaffer.akyil.net/2008/02/23/makale/yazilim/sql/admin/inner-outer-left-right-crossfull-join-nedir.aspx</link> <comments>http://muzaffer.akyil.net/2008/02/23/makale/yazilim/sql/admin/inner-outer-left-right-crossfull-join-nedir.aspx#comments</comments> <pubDate>Sat, 23 Feb 2008 00:15:02 +0000</pubDate> <dc:creator>Muzaffer Ali AKYIL</dc:creator> <category><![CDATA[SQL]]></category> <category><![CDATA[cross join]]></category> <category><![CDATA[inner join]]></category> <category><![CDATA[join]]></category> <category><![CDATA[left join]]></category> <category><![CDATA[mssql]]></category> <category><![CDATA[mysql]]></category> <category><![CDATA[outer join]]></category> <category><![CDATA[right join]]></category><guid isPermaLink="false">http://www.muzafferakyil.com/2008/02/23/makale/yazilim/sql/admin/inner-outer-left-right-crossfull-join-nedir.aspx</guid> <description><![CDATA[SQL Sorgulama dilinde birden fazla tabloyu birleştirme yada ilgili başka tablodan veri çekmek için Inner, Outer, Left, Right, Cross Join Segmentleri kullanılır. Bunlar aşağıda belirtildiği şekilde kullanılır. Inner Join Çok basit olarak inner join&#160; bir-e-bir join anlamına gelmektedir. İki tablonuz olduğunu düşünün TabloA da Alan1 adlı bir alanınız var bu alanda A,B,C değerleri var,TabloB de [...]]]></description> <content:encoded><![CDATA[<p>SQL Sorgulama dilinde birden fazla tabloyu birleştirme yada ilgili başka tablodan veri çekmek için Inner, Outer, Left, Right, Cross Join Segmentleri kullanılır.</p></p><p><span id="more-115"></span></p><p>Bunlar aşağıda belirtildiği şekilde kullanılır.</p><h4>Inner Join</h4><p><b></b></p><p>Çok basit olarak inner join&nbsp; bir-e-bir join anlamına gelmektedir. İki tablonuz olduğunu düşünün TabloA da Alan1 adlı bir alanınız var bu alanda A,B,C değerleri var,<br />TabloB de Alan1 de ise A,B,K değerleri var.</p><p>Eğer iki tablo arasında inner join kurarsanız sonuç ta dönecek listede sadece A ve B değerleri olacaktır. Çünkü inner joinde yanlızca eşit olan kayıtlar döner.</p><pre class="brush: sql; ">

SELECT TabloA.Alan1 as TabloAAlan1 , TabloB.Alan1 as TabloBAlan1
FROM TabloA INNER JOIN TabloB
ON TabloA.Alan1 = TabloB.Alan1
/*
Kodun MSSQL de sade şekli şudur :
*/
SELECT TabloA.Alan1, TabloB.Alan1 as TabloBAlan1
FROM TabloA , TabloB
WHERE TabloA.Alan1 = TabloB.Alan1
/*
Dönen Sonuç :
TabloAAlan1 TabloBAlan1
A A
B B
*/
</pre><h4>Outer Join<br /></h4><p>Çok basit olarak outer bir-e-çoklu join anlamına gelmektedir (MsSQL Server da çok-a-çoklu join de kurulabilmektedir). İki tablonuz olduğunu düşünün TabloA da Alan1 adlı bir alanınız var bu alanda A,B,C değerleri var, TabloB de Alan1 de ise A,B,K değerleri var.</p><p>Eğer iki tablo arasında outer join kuracaksınız ve sizin için TabloA daki tüm kayıtlar TabloB de ise sadece TabloA da bulunanlar gelir.</p><p><strong>Left Outer Join<br /></strong></p><p>Join kelimesinin sol tarafındaki tabloyu baz alarak eklemek için kullanılır.</p><pre class="brush: sql; ">

SELECT TabloA.Alan1 as TabloAAlan1, TabloB.Alan1 as TabloBAlan1
FROM TabloA LEFT OUTER JOIN TabloB
ON TabloA.Alan1 = TabloB.Alan1
/*
Bu kodun MSSQL de sade şekli şudur :
*/
SELECT TabloA.Alan1 as TabloAAlan1, TabloB.Alan1 as TabloBAlan1
FROM TabloA , TabloB
WHERE TabloA.Alan1 *= TabloB.Alan1
/*
Dönen Sonuç :
TabloAAlan1 TabloBAlan1
A A
B B
C Null
*/
</pre><p><strong><br />Right Outer Join</strong><br />Join kelimesinin sağ tarafındaki tabloyu baz alarak eklemek için kullanılır.</p><pre class="brush: sql; ">

SELECT TabloA.Alan1 as TabloAAlan1, TabloB.Alan1 as TabloBAlan1
FROM TabloA RIGHT OUTER JOIN TabloB
ON TabloA.Alan1 = TabloB.Alan1
/*
Bu kodun MSSQL de sade şekli şudur :
*/
SELECT TabloA.Alan1 as TabloAAlan1, TabloB.Alan1 as TabloBAlan1
FROM TabloA , TabloB
WHERE TabloA.Alan1 =* TabloB.Alan1
/*
Dönen Sonuç :
TabloAAlan1 TabloBAlan1
A A
B B
Null K
*/
</pre><p><strong>Full Outer Join (MySQL için Cross Outer Join)<br /></strong>Her iki tablodaki tüm verileri getirmek için kullanılır.</p><pre class="brush: sql; ">

SELECT TabloA.Alan1 as TabloAAlan1, TabloB.Alan1 as TabloBAlan1
FROM TabloA FULL OUTER JOIN TabloB
ON TabloA.Alan1 = TabloB.Alan1
/*
Bu kodun MSSQL de sade şekli şudur :
*/
SELECT TabloA.Alan1 as TabloAAlan1, TabloB.Alan1 as TabloBAlan1
FROM TabloA , TabloB
WHERE TabloA.Alan1 =* TabloB.Alan1
/*
Dönen Sonuç :
TabloAAlan1 TabloBAlan1
A A
B B
Null K
C Null
*/
</pre><p>Join&#8217; nin sade halinde kullanılan &#8220;*&#8221; karakteri ise sadece Ms SQL Server&#8217;a özeldir. Oracle da ise bu karakter yerine &#8220;(+)&#8221; işareti kullanılmaktadır ve alan isimlerin sonuna bir boşluk bırakarak yazılır.</p><p>Örnek olarak : WHERE TabloA.Alan1 = TabloB.Alan1 (+)</p><blockquote><p>OUTER cümlesi kullanılmasada olur. (Left Join gibi)</p></blockquote><p>Kolay Gelsin.</p> <iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fmuzaffer.akyil.net%2F2008%2F02%2F23%2Fmakale%2Fyazilim%2Fsql%2Fadmin%2Finner-outer-left-right-crossfull-join-nedir.aspx&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe><img class="colorbox-115"  src="http://muzaffer.akyil.net/?ak_action=api_record_view&id=115&type=feed" alt="" />]]></content:encoded> <wfw:commentRss>http://muzaffer.akyil.net/2008/02/23/makale/yazilim/sql/admin/inner-outer-left-right-crossfull-join-nedir.aspx/feed</wfw:commentRss> <slash:comments>11</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using memcached
Page Caching using memcached
Database Caching using memcached
Object Caching 364/415 objects using memcached

Served from: muzaffer.akyil.net @ 2012-02-09 09:32:53 -->
