<?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>Maciej Grabek &#187; T-SQL Random</title>
	<atom:link href="https://blog.maciejgrabek.com/tag/t-sql-random/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.maciejgrabek.com</link>
	<description>/* Make it See Sharp - Windows Phone, C#, .NET i nie tylko */</description>
	<lastBuildDate>Mon, 27 Oct 2014 11:18:40 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.2.38</generator>
	<item>
		<title>T-SQL Random &#8211; HOW TO</title>
		<link>https://blog.maciejgrabek.com/2009/02/18/t-sql-random-how-to/</link>
		<comments>https://blog.maciejgrabek.com/2009/02/18/t-sql-random-how-to/#comments</comments>
		<pubDate>Wed, 18 Feb 2009 22:58:00 +0000</pubDate>
		<dc:creator><![CDATA[maciek]]></dc:creator>
				<category><![CDATA[HOW TO]]></category>
		<category><![CDATA[T-SQL Random]]></category>

		<guid isPermaLink="false">http://maciejgrabek.com/maciek_blog/?p=9959</guid>
		<description><![CDATA[Jakiś czas temu przyszło mi się zmierzyć z zadaniem wybrania losowych wierszy z tabeli pobranej z bazy MS SQL. Z racji na to, że nigdy wcześniej tego nie robiłem, zacząłem poszukiwania. Wykorzystanie w tym celu operacji na danych po stronie C# wydaje się absurdalną sprawą z racji na konieczność przekazania całej tabeli do logiki losującej to raz, a dwa C# działałby wolniej niż T-SQL na tabelach. Pora przeszukać sieć – udało mi się znaleźć kilka dyskusji traktujących o tym temacie – różne też były rozwiązania, jednakże jedno z nich okazało się strzałem w dziesiątkę. Przedstawia się ono następująco: SELECT Kolumna1, [Kolumna2,…] FROM NazwaTabeli [WHERE warunek] ORDER BY NEWID() Proste w zrozumieniu i zastosowaniu rozwiązanie stało się lekarstwem na utrzymanie wydajności rozwiązania a także jego przejrzystości i spójności. Żeby było ciekawiej, to w niedługim czasie okazało się, że przy realizowanym przeze mnie projekcie również jest wymagana podobna funkcjonalność z dużym naciskiem na wydajność (nieporównywalnie większym niż przy pierwszym projekcie). Na marginesie dodam, że pierwszym zadaniem w jakim przydatne mi było zastosowanie ORDER BY NEWID() była implementacja QUIZU będącego częścią konferencji Communities 2 Communities 2009. Mam nadzieję, że ten post pomoże komuś, kto trafił na zadanie realizacji takiej funkcjonalności – jeżeli tak,<a href="https://blog.maciejgrabek.com/2009/02/18/t-sql-random-how-to/" class="searchmore">Read the Rest...</a><div class="clr"></div>]]></description>
				<content:encoded><![CDATA[<p>Jakiś czas temu przyszło mi się zmierzyć z zadaniem wybrania losowych wierszy z tabeli pobranej z bazy MS SQL. Z racji na to, że nigdy wcześniej tego nie robiłem, zacząłem poszukiwania. Wykorzystanie w tym celu operacji na danych po stronie C# wydaje się absurdalną sprawą z racji na konieczność przekazania całej tabeli do logiki losującej to raz, a dwa C# działałby wolniej niż T-SQL na tabelach. Pora przeszukać sieć – udało mi się znaleźć kilka dyskusji traktujących o tym temacie – różne też były rozwiązania, jednakże jedno z nich okazało się strzałem w dziesiątkę. Przedstawia się ono następująco:</p>
<p>SELECT Kolumna1, [Kolumna2,…]</p>
<blockquote><p>FROM NazwaTabeli</p>
<p>[WHERE warunek]</p>
<p>ORDER BY NEWID()</p></blockquote>
<p>Proste w zrozumieniu i zastosowaniu rozwiązanie stało się lekarstwem na utrzymanie wydajności rozwiązania a także jego przejrzystości i spójności.</p>
<p>Żeby było ciekawiej, to w niedługim czasie okazało się, że przy realizowanym przeze mnie projekcie również jest wymagana podobna funkcjonalność z dużym naciskiem na wydajność (nieporównywalnie większym niż przy pierwszym projekcie). Na marginesie dodam, że pierwszym zadaniem w jakim przydatne mi było zastosowanie ORDER BY NEWID() była implementacja QUIZU będącego częścią konferencji <a href="http://c2c.org.pl/">Communities 2 Communities 2009</a>.</p>
<p>Mam nadzieję, że ten post pomoże komuś, kto trafił na zadanie realizacji takiej funkcjonalności – jeżeli tak, to cel osiągnięty <img src="https://blog.maciejgrabek.com/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
			<wfw:commentRss>https://blog.maciejgrabek.com/2009/02/18/t-sql-random-how-to/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
