<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; SQL: помогите с оптимизацией запроса]]></title>
		<link>http://forum.script-coding.com/viewtopic.php?id=5434</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=5434&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «SQL: помогите с оптимизацией запроса».]]></description>
		<lastBuildDate>Mon, 31 Jan 2011 16:22:34 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: SQL: помогите с оптимизацией запроса]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=44675#p44675</link>
			<description><![CDATA[<p>Тема закрыта...</p>]]></description>
			<author><![CDATA[null@example.com (Евген)]]></author>
			<pubDate>Mon, 31 Jan 2011 16:22:34 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=44675#p44675</guid>
		</item>
		<item>
			<title><![CDATA[Re: SQL: помогите с оптимизацией запроса]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=44669#p44669</link>
			<description><![CDATA[<p>Не уверен что с этим запросом можно что-то существенное сделать(впрочем большим специалистом в SQL я не являюсь:)). С другой стороны, если такой запрос в течении дня нужно выполнять часто, то есть смысл сделать ещё одну таблицу (например, software_last), в которую раз в сутки(ночью) по шедулеру заносить последние данные по всем АРМ(предварительно очищая таблицу от старых данных). И уже из software_last получать информацию о кол-ве установок программ на рабочих местах.</p>]]></description>
			<author><![CDATA[null@example.com (BeS Yara)]]></author>
			<pubDate>Mon, 31 Jan 2011 12:51:04 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=44669#p44669</guid>
		</item>
		<item>
			<title><![CDATA[SQL: помогите с оптимизацией запроса]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=44526#p44526</link>
			<description><![CDATA[<p>Здравствуйте !<br />Помогите с составлением запроса, смысл в следующем:<br />Есть таблица (software) в которой собрано более 100 тыс. записей следующего содержания:<br />Date - дата инвентаризации<br />arm - имя автоматизированного рабочего места<br />software - название установленного программного обеспечения.</p><p>Один и тот же АРМ может иметь несколько результатов инвентаризации ПО по датам, но не более одного результата в день.<br />Нужно составить такой запрос, чтобы выдавался список всего ПО и количество его установок на АРМах, но состоящих из результатов самой последней инвентаризации по каждому АРМу. Потому что ненужное ПО уже могли деинсталлировать.<br />Я сделал такой запрос:<br /></p><div class="codebox"><pre><code>select b.software, count(b.software) from software b where b.date in (select max(a.date) from software a where a.arm=b.arm group by a.arm) group by b.software</code></pre></div><p>Запрос работает, но ужасно долго... подозреваю что нужно сделать через использование EXISTS, но никак не получается, не пойму почему... :-(</p>]]></description>
			<author><![CDATA[null@example.com (Евген)]]></author>
			<pubDate>Sat, 29 Jan 2011 10:45:15 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=44526#p44526</guid>
		</item>
	</channel>
</rss>
