<?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>Web Geliştirici &#187; SQL_CALC_FOUND_ROWS</title>
	<atom:link href="http://www.webgelistirici.com/tag/sql_calc_found_rows/feed" rel="self" type="application/rss+xml" />
	<link>http://www.webgelistirici.com</link>
	<description>:: PHP, Kohana, JavaScript, Ajax, XHTML, XML, CSS, MySQL ve diğer web yazılım geliştirme teknolojileri hakkında faydalı bilgi ve teknikler</description>
	<lastBuildDate>Tue, 03 Jan 2012 13:55:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Limitli Bir Sorgunun Limitsiz Halinin Sonuç Sayısını Bulmak</title>
		<link>http://www.webgelistirici.com/limitli-bir-sorgunun-limitsiz-halinin-sonuc-sayisini-bulmak.html</link>
		<comments>http://www.webgelistirici.com/limitli-bir-sorgunun-limitsiz-halinin-sonuc-sayisini-bulmak.html#comments</comments>
		<pubDate>Sun, 14 Feb 2010 07:11:25 +0000</pubDate>
		<dc:creator>Bülent Yılmaz</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[limit]]></category>
		<category><![CDATA[SQL_CALC_FOUND_ROWS]]></category>

		<guid isPermaLink="false">http://www.webgelistirici.com/?p=17</guid>
		<description><![CDATA[SQL&#8217;de bir sorgunun döndüreceği sonuç sayısı limit eki ile sınırlandırılır. Özellikle sayfalama yaparken bunu çok sık kullanırız. Örneğin SELECT * FROM tablo WHERE id &#62; 100 LIMIT 10 sorgusu bize şarta uyan ilk 10 kaydı getirecektir. Peki ama limit koymasaydık toplam kaç kayıt gelecekti? Toplam kayıt sayısını bulmak için aklımıza gelen ilk yol aynı sorguyu [...]]]></description>
			<content:encoded><![CDATA[<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } -->SQL&#8217;de bir sorgunun döndüreceği sonuç sayısı <code>limit</code> eki ile sınırlandırılır. Özellikle sayfalama yaparken bunu çok sık kullanırız. Örneğin</p>

<div class="wp_syntax"><div class="code"><pre class="mysql" style="font-family:monospace;"><span style="color: #990099; font-weight: bold;">SELECT</span> <span style="color: #CC0099;">*</span> <span style="color: #990099; font-weight: bold;">FROM</span> tablo <span style="color: #990099; font-weight: bold;">WHERE</span> id <span style="color: #CC0099;">&gt;</span> <span style="color: #008080;">100</span> <span style="color: #990099; font-weight: bold;">LIMIT</span> <span style="color: #008080;">10</span></pre></div></div>

<p>sorgusu bize şarta uyan ilk 10 kaydı getirecektir. Peki ama limit koymasaydık toplam kaç kayıt gelecekti? Toplam kayıt sayısını bulmak için aklımıza gelen ilk yol aynı sorguyu limitsiz olarak ikinci sefer işletmektir. Bunun yerine MySQL&#8217;in <code><strong>SQL_CALC_FOUND_ROWS</strong></code> ifadesi böyle bir durumda bizi ikinci bir sorgu işletmekten kurtarıyor.</p>

<div class="wp_syntax"><div class="code"><pre class="mysql" style="font-family:monospace;"><span style="color: #990099; font-weight: bold;">SELECT</span> <span style="color: #990099; font-weight: bold;">SQL_CALC_FOUND_ROWS</span> <span style="color: #CC0099;">*</span> <span style="color: #990099; font-weight: bold;">FROM</span> tablo <span style="color: #990099; font-weight: bold;">WHERE</span> id <span style="color: #CC0099;">&gt;</span> <span style="color: #008080;">100</span> <span style="color: #990099; font-weight: bold;">LIMIT</span> <span style="color: #008080;">10</span></pre></div></div>

<p>Yukarıdaki sorgunun limitsiz halinin sonuç sayısını bulmak için aşağıdaki yöntemi kullanıyoruz.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000088;">$toplam_kayit_sayisi_s</span> <span style="color: #339933;">=</span> <span style="color: #990000;">mysql_query</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot; SELECT FOUND_ROWS() AS adet &quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$toplam_kayit_sayisi_fa</span> <span style="color: #339933;">=</span> <span style="color: #990000;">mysql_fetch_array</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$toplam_kayit_sayisi_s</span><span style="color: #339933;">,</span> MYSQL_ASSOC<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$toplam_kayit_sayisi</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$toplam_kayit_sayisi_fa</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'adet'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Böylece yeni bir sorgu işletmeden toplam kayıt sayısını elde etmiş oluruz. Yukarıdaki işlemler, kendisinden önce <code>SQL_CALC_FOUND_ROWS</code> ifadesi geçen en sonuncu sorgu için uygulanacaktır.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webgelistirici.com/limitli-bir-sorgunun-limitsiz-halinin-sonuc-sayisini-bulmak.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

