<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Форум PHP-MyAdmin.RU &mdash; нужно сделать рандомную выборку через ORDER BY RAND()]]></title>
	<link rel="self" href="https://forum.php-myadmin.ru/extern.php?action=feed&amp;tid=2533&amp;type=atom" />
	<updated>2012-04-13T22:33:19Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.php-myadmin.ru/viewtopic.php?id=2533</id>
		<entry>
			<title type="html"><![CDATA[Re: нужно сделать рандомную выборку через ORDER BY RAND()]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=19628#p19628" />
			<content type="html"><![CDATA[<p>Hanut вы мой герой :)))<br />каждый раз вам поражаюсь, как вы один на весь форум, столько знаете, и так доступно объясняете<br />спасибо вам огромаднейшее!!! в который раз :)</p>]]></content>
			<author>
				<name><![CDATA[элекроник]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=2877</uri>
			</author>
			<updated>2012-04-13T22:33:19Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=19628#p19628</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: нужно сделать рандомную выборку через ORDER BY RAND()]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=19627#p19627" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>элекроник сказал:</cite><blockquote><p>1. что означает `rand` в ваших вариантах?</p></blockquote></div><p>`rand` - это алиас (короткое имя) для функции RAND(). То есть мы добавляем к каждой строке к полям `id` и `number` поле `rand` содержащее случайное число. В последствии мы по этому случайному числу сортируем с помощью конструкции ORDER BY `rand`.</p><div class="quotebox"><cite>элекроник сказал:</cite><blockquote><p>2. допускается ли (в ваших двух вариантах) вероятность совпадений выводимых запросов (хоть я этого и не заметил) ?,<br />и какой из них лучше использовать?</p></blockquote></div><p>Ответ зависит от структуры вашей таблицы.</p><p>Если поле id является первичным или уникальным ключом, то повторяться оно не будет никогда.<br />Если id - это не индекс, а просто поле и в нем могут быть повторяющиеся значения, то используйте вариант с GROUP BY `id`.</p>]]></content>
			<author>
				<name><![CDATA[Hanut]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=181</uri>
			</author>
			<updated>2012-04-13T19:54:46Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=19627#p19627</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: нужно сделать рандомную выборку через ORDER BY RAND()]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=19626#p19626" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>Попробуйте так:</p></blockquote></div><p>сейчас дам ответ<br />(по моему я недопустимо ступил) так и есть, даже не знаю как такой тупёж объяснить, ох как стыдно</p><p>Hanut,<br />всё исправил и пробовал теперь обновлять страницу много раз и в предложенном вами первом и втором варианте одинаковые записи не выводятся, то есть что и требовалось :)</p><p>но не могли бы вы ответить ещё на несколько вопросов<br />1. что означает `rand` в ваших вариантах?<br />2. допускается ли (в ваших двух вариантах) вероятность совпадений выводимых запросов (хоть я этого и не заметил) ?,<br />и какой из них лучше использовать?</p>]]></content>
			<author>
				<name><![CDATA[элекроник]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=2877</uri>
			</author>
			<updated>2012-04-13T18:56:01Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=19626#p19626</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: нужно сделать рандомную выборку через ORDER BY RAND()]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=19625#p19625" />
			<content type="html"><![CDATA[<p>Попробуйте так:<br /></p><div class="codebox"><pre><code>SELECT `id`, `number`, RAND() AS `rand`
FROM `table`
GROUP BY `id`
ORDER BY `rand`
LIMIT 3</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Hanut]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=181</uri>
			</author>
			<updated>2012-04-13T18:50:42Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=19625#p19625</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: нужно сделать рандомную выборку через ORDER BY RAND()]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=19624#p19624" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>Необходимо немного изменить запрос:</p></blockquote></div><p>к сожалению получается так же как и у меня в (вариант 2)<br />то есть &quot;выбираются одинаковые id (почти при каждом обновлении страницы)&quot;<br />что же с этим делать</p><p>---<br />не получалось из-за моей ошибки,<br />после её исправления всё работает как нужно<br />поэтому этот вариант я и использую, Hanut ещё раз большое спасибо!</p>]]></content>
			<author>
				<name><![CDATA[элекроник]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=2877</uri>
			</author>
			<updated>2012-04-13T18:39:02Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=19624#p19624</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: нужно сделать рандомную выборку через ORDER BY RAND()]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=19623#p19623" />
			<content type="html"><![CDATA[<p>Необходимо немного изменить запрос:<br /></p><div class="codebox"><pre><code>SELECT `id`, `number`, RAND() AS `rand`
FROM `table`
ORDER BY `rand`
LIMIT 3</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Hanut]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=181</uri>
			</author>
			<updated>2012-04-13T18:10:01Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=19623#p19623</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[нужно сделать рандомную выборку через ORDER BY RAND()]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=19622#p19622" />
			<content type="html"><![CDATA[<p>здравствуйте</p><p>нужно сделать рандомную выборку полей id и number по id</p><p>когда делаю вот так: (вариант 1)<br /></p><div class="codebox"><pre><code>$res = mysql_query(&quot;SELECT id,number FROM table WHERE id BETWEEN 10 AND 20 ORDER BY RAND() LIMIT 3&quot;,$db) or die(&quot;Ошибка 1&quot;);
while ($row = mysql_fetch_array($res)) {
echo $row[&#039;id&#039;] . &#039;&lt;br&gt;&#039; . $row[&#039;number&#039;] . &#039;&lt;br&gt;&lt;br&gt;&#039;;
}</code></pre></div><p>вроде всё работает как надо, все три числа/id разные (ни разу не попадались одинаковые)<br />но дело в том что мне тут не нужен диапазон от 10 и до 20. нужно чтобы выбор происходил из <strong>всех</strong> id которые есть в таблице</p><p>но если делаю так: (вариант 2)<br /></p><div class="codebox"><pre><code>$res = mysql_query(&quot;SELECT id,number FROM table ORDER BY RAND() LIMIT 3&quot;,$db) or die(&quot;Ошибка 1&quot;);
while ($row = mysql_fetch_array($res)) {
echo $row[&#039;id&#039;] . &#039;&lt;br&gt;&#039; . $row[&#039;number&#039;] . &#039;&lt;br&gt;&lt;br&gt;&#039;;
}</code></pre></div><p>то выбираются одинаковые id (почти при каждом обновлении страницы), чего бы хотелось избежать<br />почему так?<br />и как это исправить?</p>]]></content>
			<author>
				<name><![CDATA[элекроник]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=2877</uri>
			</author>
			<updated>2012-04-13T17:43:33Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=19622#p19622</id>
		</entry>
</feed>
