<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=440250&amp;view=findpost&amp;p=3897703</guid>
        <pubDate>Sat, 09 Dec 2023 08:33:51 +0000</pubDate>
        <title>Запрос в Mysql, не могу сообразить по order by/group by</title>
        <link>https://forum.sources.ru/index.php?showtopic=440250&amp;view=findpost&amp;p=3897703</link>
        <description><![CDATA[Akina: <strong class='tag-b'>Gonarh</strong><br>
Индекса нет - значит, все заверения не более чем фикция, и дубликат когда-нибудь обязательно встретится. Как итог сбоя, ошибки или злонамеренного действия. И крайне глупо запихивать голову в песок и не учитывать такой ситуации.]]></description>
        <author>Akina</author>
        <category>Базы данных: SQL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=440250&amp;view=findpost&amp;p=3897701</guid>
        <pubDate>Fri, 08 Dec 2023 23:55:34 +0000</pubDate>
        <title>Запрос в Mysql, не могу сообразить по order by/group by</title>
        <link>https://forum.sources.ru/index.php?showtopic=440250&amp;view=findpost&amp;p=3897701</link>
        <description><![CDATA[Gonarh: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=440250&view=findpost&p=3897618'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Akina &#064; <time class="tag-quote__quoted-time" datetime="2023-12-07T08:27:44+00:00">07.12.23, 08:27</time></span><div class='quote '>Если на <strong class='tag-b'><span class="tag-color tag-color-named" data-value="blue" style="color: blue">(id_X, foo)</span></strong> в структуре НЕ наложено требование уникальности</div></div><br>
Индекса уникального нет, но по сути оно будет уникальным.]]></description>
        <author>Gonarh</author>
        <category>Базы данных: SQL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=440250&amp;view=findpost&amp;p=3897618</guid>
        <pubDate>Thu, 07 Dec 2023 08:27:44 +0000</pubDate>
        <title>Запрос в Mysql, не могу сообразить по order by/group by</title>
        <link>https://forum.sources.ru/index.php?showtopic=440250&amp;view=findpost&amp;p=3897618</link>
        <description><![CDATA[Akina: <strong class='tag-b'>Gonarh</strong><br>
Если версия MySQL - 8+, то<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">WITH</div><div class="code_line">cte AS (</div><div class="code_line">&nbsp;&nbsp; &nbsp;SELECT id_X, foo, bar, </div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ROW_NUMBER() OVER (PARTITION BY id_X ORDER BY foo DESC) rn</div><div class="code_line">&nbsp;&nbsp; &nbsp;FROM sourcetable</div><div class="code_line">&nbsp;&nbsp; &nbsp;)</div><div class="code_line">SELECT id_X, foo, bar</div><div class="code_line">FROM cte</div><div class="code_line">WHERE rn = 1;</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
Если на <strong class='tag-b'><span class="tag-color tag-color-named" data-value="blue" style="color: blue">(id_X, foo)</span></strong> в структуре НЕ наложено требование уникальности, то формально в таблице может оказаться несколько записей с одинаковым максимальным <strong class='tag-b'><span class="tag-color tag-color-named" data-value="blue" style="color: blue">foo</span></strong>. Запрос <strong class='tag-b'>Majestio</strong> в этом случае вернёт все эти записи. Мой - одну из них, причём случайную. Если нужна одна, но определённая, следует расширить выражение ORDER BY в определении окна и обеспечить уникальность с нужной сортировкой, чтобы возвращалась детерминированная запись.]]></description>
        <author>Akina</author>
        <category>Базы данных: SQL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=440250&amp;view=findpost&amp;p=3897602</guid>
        <pubDate>Thu, 07 Dec 2023 06:45:47 +0000</pubDate>
        <title>Запрос в Mysql, не могу сообразить по order by/group by</title>
        <link>https://forum.sources.ru/index.php?showtopic=440250&amp;view=findpost&amp;p=3897602</link>
        <description><![CDATA[Gonarh: Наша радость от Вашего посещения, не знает границ  :rolleyes:]]></description>
        <author>Gonarh</author>
        <category>Базы данных: SQL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=440250&amp;view=findpost&amp;p=3897600</guid>
        <pubDate>Thu, 07 Dec 2023 05:44:10 +0000</pubDate>
        <title>Запрос в Mysql, не могу сообразить по order by/group by</title>
        <link>https://forum.sources.ru/index.php?showtopic=440250&amp;view=findpost&amp;p=3897600</link>
        <description><![CDATA[Majestio: Привет&#33;<br>
<br>
Такой результат можно получить следующим запросом:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">SELECT t1.id_X, t1.foo, t1.bar</div><div class="code_line">FROM Table1 t1</div><div class="code_line">INNER JOIN (</div><div class="code_line">&nbsp;&nbsp;SELECT id_X, MAX(foo) AS max_foo</div><div class="code_line">&nbsp;&nbsp;FROM Table1</div><div class="code_line">&nbsp;&nbsp;GROUP BY id_X</div><div class="code_line">) t2 ON t1.id_X = t2.id_X AND t1.foo = t2.max_foo</div><div class="code_line">ORDER BY t1.id_X;</div></ol></div></div></div></div><br>
Вот тут можно это <a class='tag-url' href='https://onecompiler.com/mysql/3zvpccz8e' target='_blank'>проверить онлайн</a>.]]></description>
        <author>Majestio</author>
        <category>Базы данных: SQL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=440250&amp;view=findpost&amp;p=3897599</guid>
        <pubDate>Thu, 07 Dec 2023 05:04:59 +0000</pubDate>
        <title>Запрос в Mysql, не могу сообразить по order by/group by</title>
        <link>https://forum.sources.ru/index.php?showtopic=440250&amp;view=findpost&amp;p=3897599</link>
        <description><![CDATA[Gonarh: Имеется таблица вида<br>
<table class='post_table tag-table'><tr><th>id_X</th><th>foo</th><th>bar</th></tr><tr><td>1</td><td>1</td><td>z</td></tr><tr><td>1</td><td>2</td><td>x</td></tr><tr><td>1</td><td>3</td><td>f</td></tr><tr><td>2</td><td>1</td><td>d</td></tr><tr><td>2</td><td>2</td><td>g</td></tr><tr><td>2</td><td>3</td><td>u</td></tr><tr><td>2</td><td>4</td><td>w</td></tr><tr><td>3</td><td>12</td><td>k</td></tr><tr><td>3</td><td>13</td><td>m</td></tr></table><br>
Необходимо выбрать строки в которых поле foo максимальное с группировкой по полю id_X, должно получиться нечто такое<br>
<table class='post_table tag-table'><tr><th>id_X</th><th>foo</th><th>bar</th></tr><tr><td>1</td><td>3</td><td>f</td></tr><tr><td>2</td><td>4</td><td>w</td></tr><tr><td>3</td><td>13</td><td>m</td></tr></table><br>
Пробовал так<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">SELECT * FROM table GROUP BY id_X ORDER BY foo DESC</div></ol></div></div></div></div><br>
Но как я понял сначала идёт группировка, а потом уже сортировка, а как сделать наоборот, сначала сортировку а потом группировку?]]></description>
        <author>Gonarh</author>
        <category>Базы данных: SQL</category>
      </item>
	
      </channel>
      </rss>
	