﻿<?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>SQL Server&#8217;da CTE &#8211; SQL Server Eğitimleri</title>
	<atom:link href="https://sqlserveregitimleri.com/etiket/sql-serverda-cte/feed" rel="self" type="application/rss+xml" />
	<link>https://sqlserveregitimleri.com</link>
	<description>SQL Server ile ilgili her şey</description>
	<lastBuildDate>Sat, 25 Mar 2023 13:58:21 +0000</lastBuildDate>
	<language>tr</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.1</generator>
	<item>
		<title>SQL Server&#8217;da CTE&#8217;leri Kullanmak</title>
		<link>https://sqlserveregitimleri.com/sql-serverda-cteleri-kullanmak</link>
		
		<dc:creator><![CDATA[Yavuz Selim Kart]]></dc:creator>
		<pubDate>Sat, 25 Mar 2023 13:58:21 +0000</pubDate>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[CTE Kullanımı]]></category>
		<category><![CDATA[SQL Server CTE]]></category>
		<category><![CDATA[SQL Server'da CTE]]></category>
		<guid isPermaLink="false">https://sqlserveregitimleri.com/?p=15824</guid>

					<description><![CDATA[Herkese merhaba, Bu yazıda SQL Server’da CTE&#8217;leri kullanmak ile ilgili bilgi vermeye çalışacağım. SQL Server&#8217;da CTE (Common Table Expressions), geçici olarak bir SQL ifadesi içinde...]]></description>
										<content:encoded><![CDATA[<p>Herkese merhaba,</p>
<p>Bu yazıda SQL Server’da CTE&#8217;leri kullanmak ile ilgili bilgi vermeye çalışacağım.</p>
<p>SQL Server&#8217;da CTE (Common Table Expressions), geçici olarak bir SQL ifadesi içinde kullanılan ve sorguların daha okunaklı ve anlaşılır hale getirilmesine yardımcı olan bir yapıdır.</p>
<p>Tablo oluşturarak bir CTE örneği yapalım. Örneğimizde bir müzik şirketinin şarkı ve albüm verilerini içeren iki tablosu var: Songs ve Albums. Şimdi, CTE kullanarak, her albümdeki en popüler şarkıları bulalım.</p>
<p>Öncelikle, Songs ve Albums tablolarını oluşturalım:</p>
<pre class="line-numbers"><code class="language-sql">CREATE TABLE Songs (
	SongID INT
   ,SongName VARCHAR(50)
   ,AlbumID INT
   ,Plays INT
);

INSERT INTO Songs
	VALUES (1, 'Shape of You', 1, 10000000);
INSERT INTO Songs
	VALUES (2, 'Castle on the Hill', 1, 8000000);
INSERT INTO Songs
	VALUES (3, 'Galway Girl', 1, 5000000);
INSERT INTO Songs
	VALUES (4, 'Perfect', 2, 12000000);
INSERT INTO Songs
	VALUES (5, 'Happier', 2, 6000000);
INSERT INTO Songs
	VALUES (6, 'New Man', 2, 4000000);
INSERT INTO Songs
	VALUES (7, 'Sweet Child O'' Mine', 3, 9000000);
INSERT INTO Songs
	VALUES (8, 'November Rain', 3, 7000000);
INSERT INTO Songs
	VALUES (9, 'Paradise City', 3, 6000000);

CREATE TABLE Albums (
	AlbumID INT
   ,AlbumName VARCHAR(50)
   ,Artist VARCHAR(50)
);

INSERT INTO Albums
	VALUES (1, '÷', 'Ed Sheeran');
INSERT INTO Albums
	VALUES (2, 'Divide', 'Ed Sheeran');
INSERT INTO Albums
	VALUES (3, 'Appetite for Destruction', 'Guns N'' Roses');</code></pre>
<p>Şimdi, CTE kullanarak her albümdeki en popüler şarkıları bulalım:</p>
<pre class="line-numbers"><code class="language-sql">WITH CTE_AlbumPopularity
AS
(SELECT
		AlbumID
	   ,MAX(Plays) AS MaxPlays
	FROM Songs
	GROUP BY AlbumID)
SELECT
	a.AlbumName
   ,s.SongName
   ,s.Plays
FROM CTE_AlbumPopularity p
INNER JOIN Songs s
	ON p.AlbumID = s.AlbumID
		AND p.MaxPlays = s.Plays
INNER JOIN Albums a
	ON s.AlbumID = a.AlbumID;</code></pre>
<p>Yukarıdakş sorgu, her albümdeki en popüler şarkıları bulur ve şarkı adını, albüm adını ve dinlenme sayısını döndürür. Bu örnekte, CTE_AlbumPopularity adında bir CTE tanımlanmıştır. Bu CTE, Songs tablosundaki her albümün en yüksek dinlenme sayısını bulur ve her bir albüm için bir satır döndürür. Daha sonra, CTE_AlbumPopularity ile Songs tablosu içindeki AlbumID ve Plays alanlarını birleştirerek, her albümdeki en popüler şarkıyı bulan bir sorgu oluşturulmuştur.</p>
<p>CTE kullanmanın avantajları şunlardır:</p>
<ul>
<li>Daha okunaklı ve anlaşılır sorgular yazmanıza yardımcı olur.</li>
<li>Karmaşık sorguları daha kolay yönetmenizi sağlar.</li>
<li>Performansı artırabilir, çünkü CTE&#8217;ler, sorguları daha iyi optimize etmek için kullanılabilir.</li>
</ul>
<p>Ancak, CTE&#8217;lerin dezavantajı, büyük veri kümeleriyle çalışırken bellek kullanımının artmasıdır. Bu nedenle, büyük veri kümeleriyle çalışırken, CTE kullanmadan önce dikkatli bir şekilde düşünmelisiniz.</p>
<p>CTE (Common Table Expressions) yazarken aşağıdaki faktörleri göz önünde bulundurmak da önemlidir:</p>
<ol>
<li>CTE&#8217;nin amacını belirleyin: CTE&#8217;ler, sorgunuzu daha okunaklı ve anlaşılır hale getirmek veya karmaşık sorguları daha kolay yönetmek için kullanılır. CTE yazmadan önce, ne tür bir işlevi yerine getirmek istediğinizi belirleyin.</li>
<li>CTE&#8217;yi doğru şekilde tanımlayın: CTE&#8217;ler, WITH anahtar kelimesi ile başlar ve SELECT ifadesinden önce tanımlanır. CTE&#8217;yi tanımlarken, geçici bir tablo oluşturduğunuzu ve bu tablodan sorgunuzu çalıştıracağınızı unutmayın.</li>
<li>CTE&#8217;yi sorgunuzda doğru şekilde kullanın: CTE&#8217;yi sorgunuzda kullanırken, CTE&#8217;yi SELECT, INSERT, UPDATE veya DELETE ifadeleri ile birleştirebilirsiniz. CTE&#8217;yi sorgunuzda nasıl kullanacağınızı belirlerken, CTE&#8217;nin sonuç kümesinin nasıl kullanılacağına dikkat edin.</li>
<li>CTE&#8217;nin performansını değerlendirin: CTE&#8217;ler, sorgunuzu daha optimize etmek için kullanılabilir. Ancak, büyük veri kümeleriyle çalışırken, CTE kullanmadan önce performansı dikkatli bir şekilde değerlendirmelisiniz.</li>
<li>CTE&#8217;nin okunaklı olmasını sağlayın: CTE&#8217;ler, sorgunuzu daha okunaklı ve anlaşılır hale getirmek için kullanılır. Ancak, CTE&#8217;nin okunaklı olması için, CTE&#8217;yi olabildiğince açıklayıcı bir şekilde adlandırın ve tablo ve sütun isimlerini anlaşılır bir şekilde seçin.</li>
<li>CTE&#8217;nin yeniden kullanılabilirliğini düşünün: CTE&#8217;ler, yeniden kullanılabilir kod parçaları oluşturmak için kullanılabilir. CTE&#8217;yi yeniden kullanmak isterseniz, CTE&#8217;nin amacını belirleyin ve CTE&#8217;yi yazarken okunaklı ve anlaşılır bir şekilde adlandırın.</li>
</ol>
<p>CTE&#8217;leri yazarken, sorgunuzu daha okunaklı ve anlaşılır hale getirmek için kullanırken, performansı ve yeniden kullanılabilirliği de göz önünde bulundurmanız önemlidir.</p>
<p>Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.</p>
<div class='epvc-post-count'><span class='epvc-eye'></span>  <span class="epvc-count"> 159</span><span class='epvc-label'> Kez Okundu</span></div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>SQL Server&#8217;da CTE Kullanmanın Avantajları Nelerdir?</title>
		<link>https://sqlserveregitimleri.com/sql-serverda-cte-kullanmanin-avantajlari-nelerdir</link>
		
		<dc:creator><![CDATA[Yavuz Selim Kart]]></dc:creator>
		<pubDate>Sat, 11 Mar 2023 12:40:04 +0000</pubDate>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[CTE Kullanmanın Avantajları]]></category>
		<category><![CDATA[SQL Server CTE]]></category>
		<category><![CDATA[SQL Server'da CTE]]></category>
		<guid isPermaLink="false">https://sqlserveregitimleri.com/?p=15491</guid>

					<description><![CDATA[Herkese merhaba, Bu yazıda SQL Server’da CTE kullanmanın avantajlarının neler olduğu ile ilgili bilgi vermeye çalışacağım. SQL Server&#8217;da CTE (Common Table Expression &#8211; Ortak Tablo...]]></description>
										<content:encoded><![CDATA[<p>Herkese merhaba,</p>
<p>Bu yazıda SQL Server’da CTE kullanmanın avantajlarının neler olduğu ile ilgili bilgi vermeye çalışacağım.</p>
<p>SQL Server&#8217;da CTE (Common Table Expression &#8211; Ortak Tablo İfadesi) kullanmanın birkaç avantajı vardır:</p>
<ol>
<li><strong>Daha okunaklı sorgular yazmak için kullanılabilir:</strong> CTE, bir sorgunun belirli bir bölümünü tanımlamak için kullanılabilir. Bu, daha karmaşık sorguları daha okunaklı hale getirmeye yardımcı olabilir. Özellikle büyük veri kümelerinde çalışırken, sorguların okunaklı olması ve anlaşılması önemlidir.</li>
<li><strong>Karmaşık sorguların performansını artırabilir</strong>: Bir sorgu içinde birçok alt sorgu varsa, SQL Server bu sorguları tek tek yürütmek zorunda kalabilir. CTE kullanarak, bu alt sorguları daha etkili bir şekilde yönetebilir ve sorgunun performansını artırabilirsiniz.</li>
<li><strong>Tekrar kullanılabilirliği artırabilir:</strong> CTE, bir sorgunun birden fazla yerde kullanılmasını sağlayabilir. CTE içinde tanımlanan bir tablo, aynı sorguda veya başka bir sorguda yeniden kullanılabilir. Bu, kod tekrarını azaltmaya ve bakımı kolaylaştırmaya yardımcı olabilir.</li>
<li><strong>Geçici tablo kullanmaktan daha verimli olabilir:</strong> CTE, geçici bir tablo oluşturmak yerine bir sorgunun belirli bir bölümünü geçici olarak saklayabilir. Bu, bellek kullanımını azaltabilir ve sorgunun çalışma zamanını hızlandırabilir.</li>
<li><strong>Daha az kod yazmanızı sağlayabilir:</strong> CTE, bir sorgunun belirli bir bölümünü daha önce tanımlanmış bir tablo olarak kullanmanızı sağlayabilir. Bu, daha az kod yazmanıza ve kodun daha az karışık olmasına yardımcı olabilir.</li>
</ol>
<p>Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.</p>
<div class='epvc-post-count'><span class='epvc-eye'></span>  <span class="epvc-count"> 327</span><span class='epvc-label'> Kez Okundu</span></div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>SQL Server&#8217;da CTE Kullanarak Haftanın Günlerini Listelemek</title>
		<link>https://sqlserveregitimleri.com/sql-serverda-cte-kullanarak-haftanin-gunlerini-listelemek</link>
		
		<dc:creator><![CDATA[Yavuz Selim Kart]]></dc:creator>
		<pubDate>Sat, 02 Oct 2021 07:41:18 +0000</pubDate>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[CTE Kullanarak Haftanın Günlerini Listelemek]]></category>
		<category><![CDATA[Haftanın Günleri CTE ile Listelemek]]></category>
		<category><![CDATA[SQL Server'da CTE]]></category>
		<guid isPermaLink="false">https://sqlserveregitimleri.com/?p=10980</guid>

					<description><![CDATA[Herkese merhaba, Bu yazıda SQL Server&#8217;da CTE kullanarak haftanın günlerinin nasıl listelenebileceği hakkında bilgi vereceğim. SQL Server&#8217;da bu tarz örnekler CTE yani Common Table Expression...]]></description>
										<content:encoded><![CDATA[<p>Herkese merhaba,</p>
<p>Bu yazıda SQL Server&#8217;da CTE kullanarak haftanın günlerinin nasıl listelenebileceği hakkında bilgi vereceğim.</p>
<p>SQL Server&#8217;da bu tarz örnekler CTE yani Common Table Expression ifadelerinin daha iyi anlaşılması için yapılmaktadır. Sizler de bu yapıları iyi analiz ederek kendinizi CTE konusunda geliştirebilirsiniz.</p>
<p>Aşağıdaki kodu kullanarak bu işlemi rahatlıkla yapabilirsiniz.</p>
<pre class="line-numbers"><code class="language-sql">SET LANGUAGE Turkish;

WITH cte_sayilar (sayi, HaftaninGunleri)
AS (SELECT 0,
           DATENAME(DW, 0)
    UNION ALL
    SELECT sayi + 1,
           DATENAME(DW, sayi + 1)
    FROM cte_sayilar
    WHERE sayi &lt; 6)
SELECT HaftaninGunleri
FROM cte_sayilar;</code></pre>
<p>Kodu çalıştırdığınızda aşağıdaki sonucu göreceksiniz.</p>
<p><img fetchpriority="high" decoding="async" class="alignnone wp-image-10982 size-full" src="https://sqlserveregitimleri.com/wp-content/uploads/2021/10/sql-serverda-cte-kullanarak-haftanin-gunlerini-listelemek-1.jpg" alt="SQL Server'da CTE Kullanarak Haftanın Günlerini Listelemek" width="700" height="518" srcset="https://sqlserveregitimleri.com/wp-content/uploads/2021/10/sql-serverda-cte-kullanarak-haftanin-gunlerini-listelemek-1.jpg 700w, https://sqlserveregitimleri.com/wp-content/uploads/2021/10/sql-serverda-cte-kullanarak-haftanin-gunlerini-listelemek-1-315x233.jpg 315w, https://sqlserveregitimleri.com/wp-content/uploads/2021/10/sql-serverda-cte-kullanarak-haftanin-gunlerini-listelemek-1-405x300.jpg 405w, https://sqlserveregitimleri.com/wp-content/uploads/2021/10/sql-serverda-cte-kullanarak-haftanin-gunlerini-listelemek-1-182x135.jpg 182w" sizes="(max-width: 700px) 100vw, 700px" /></p>
<p>Burada üst kısımda <strong>SET LANGUAGE Turkish</strong> yazdım. Bu kısım haftanın günlerinin Türkçe çıkması içindir. Siz hangi dili ayarlarsanız o dilde sonucunu gösterecektir.</p>
<p>Görüldüğü üzere haftanın günleri listelenmiş oldu.</p>
<p>Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.</p>
<div class='epvc-post-count'><span class='epvc-eye'></span>  <span class="epvc-count"> 366</span><span class='epvc-label'> Kez Okundu</span></div>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
