<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Комментарии на: Про MySQL</title>
	<atom:link href="http://www.likhachev.net/2008/08/12/about-mysql/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.likhachev.net/2008/08/12/about-mysql/</link>
	<description>пишу что в голову взбредёт</description>
	<lastBuildDate>Mon, 02 Aug 2010 10:18:29 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>От: Knave</title>
		<link>http://www.likhachev.net/2008/08/12/about-mysql/comment-page-1/#comment-3882</link>
		<dc:creator>Knave</dc:creator>
		<pubDate>Wed, 27 Aug 2008 13:54:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.likhachev.net/?p=250#comment-3882</guid>
		<description>Ага, ушел.</description>
		<content:encoded><![CDATA[<p>Ага, ушел.</p>
]]></content:encoded>
	</item>
	<item>
		<title>От: Pet</title>
		<link>http://www.likhachev.net/2008/08/12/about-mysql/comment-page-1/#comment-3675</link>
		<dc:creator>Pet</dc:creator>
		<pubDate>Fri, 22 Aug 2008 13:54:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.likhachev.net/?p=250#comment-3675</guid>
		<description>Видать совсем глубоко в разработку ушел, давно нет постов... :)</description>
		<content:encoded><![CDATA[<p>Видать совсем глубоко в разработку ушел, давно нет постов&#8230; :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>От: Knave</title>
		<link>http://www.likhachev.net/2008/08/12/about-mysql/comment-page-1/#comment-3495</link>
		<dc:creator>Knave</dc:creator>
		<pubDate>Fri, 15 Aug 2008 05:10:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.likhachev.net/?p=250#comment-3495</guid>
		<description>UU.VALUE_ID и TR.STUDENT_ID оба содержат ID юзера.</description>
		<content:encoded><![CDATA[<p>UU.VALUE_ID и TR.STUDENT_ID оба содержат ID юзера.</p>
]]></content:encoded>
	</item>
	<item>
		<title>От: Alex_K</title>
		<link>http://www.likhachev.net/2008/08/12/about-mysql/comment-page-1/#comment-3487</link>
		<dc:creator>Alex_K</dc:creator>
		<pubDate>Thu, 14 Aug 2008 18:02:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.likhachev.net/?p=250#comment-3487</guid>
		<description>кстати, отображается все равно некорректно.
на месте, где встречается &quot;&lt; ?&quot; (без пробела) пропал код :)</description>
		<content:encoded><![CDATA[<p>кстати, отображается все равно некорректно.<br />
на месте, где встречается &#8220;&lt; ?&#8221; (без пробела) пропал код :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>От: Alex_K</title>
		<link>http://www.likhachev.net/2008/08/12/about-mysql/comment-page-1/#comment-3486</link>
		<dc:creator>Alex_K</dc:creator>
		<pubDate>Thu, 14 Aug 2008 18:00:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.likhachev.net/?p=250#comment-3486</guid>
		<description>ну, так это вообще ошибка в логике была получается :)</description>
		<content:encoded><![CDATA[<p>ну, так это вообще ошибка в логике была получается :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>От: Knave</title>
		<link>http://www.likhachev.net/2008/08/12/about-mysql/comment-page-1/#comment-3469</link>
		<dc:creator>Knave</dc:creator>
		<pubDate>Wed, 13 Aug 2008 19:03:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.likhachev.net/?p=250#comment-3469</guid>
		<description>Чуток подправил.

Я думаю для отчетов, как данных, запрашиваемых относительно нечасто и единовременно вариант с подсчетом данных в реальном времени более подходит.

И, кстати, проблема с выбором одних и тех же данных решилась заменой

UU.VALUE_ID = &quot;1&quot;

на 

TR.STUDENT_ID = &quot;1&quot;

в условии</description>
		<content:encoded><![CDATA[<p>Чуток подправил.</p>
<p>Я думаю для отчетов, как данных, запрашиваемых относительно нечасто и единовременно вариант с подсчетом данных в реальном времени более подходит.</p>
<p>И, кстати, проблема с выбором одних и тех же данных решилась заменой</p>
<p>UU.VALUE_ID = &#8220;1&#8243;</p>
<p>на </p>
<p>TR.STUDENT_ID = &#8220;1&#8243;</p>
<p>в условии</p>
]]></content:encoded>
	</item>
	<item>
		<title>От: Alex_K</title>
		<link>http://www.likhachev.net/2008/08/12/about-mysql/comment-page-1/#comment-3468</link>
		<dc:creator>Alex_K</dc:creator>
		<pubDate>Wed, 13 Aug 2008 17:13:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.likhachev.net/?p=250#comment-3468</guid>
		<description>немного криво воткнулось, но суть понятна :)</description>
		<content:encoded><![CDATA[<p>немного криво воткнулось, но суть понятна :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>От: Alex_K</title>
		<link>http://www.likhachev.net/2008/08/12/about-mysql/comment-page-1/#comment-3467</link>
		<dc:creator>Alex_K</dc:creator>
		<pubDate>Wed, 13 Aug 2008 17:11:49 +0000</pubDate>
		<guid isPermaLink="false">http://www.likhachev.net/?p=250#comment-3467</guid>
		<description>Бы у меня похожий запрос 4 года назад:
&lt;code lang=&quot;php&quot;&gt;
	if ( $mid ) {
		# ищем по ID сообщения
		$sth = $dbh-&gt;prepare(&quot;SELECT F.ID, F.NAME, F.DESCR, F.MESS_ORDER, F.MESS_PER_PAGE, 
F.DATE_OF_CREATE, F.TOPIC_COUNT, F.MSG_COUNT FMSG_COUNT, F.URL, F.TIME_TO_EDIT, F.MAILING, 
IF((T.DATE_OF_CREATE + INTERVAL F.TIME_TO_EDIT MINUTE) &gt; NOW(), 1, 0), TEMPL.CONTENT, T.NAME, T.CONTENT, T.DATE_OF_CREATE, 
T.UID, T.NICK, T.MSG_COUNT TMSG_COUNT, T.VIEWCOUNT, 
T.STATUS, T.ID, COUNT(M.ID), F.REGISTRATION_REQUIRED, F.CAPTCHA_REQUIRED 
FROM ((($tblForums F INNER JOIN $tblTopics T ON F.ID = T.FID) 
	INNER JOIN $tblTemplates TEMPL ON F.TEMPLATE2 = TEMPL.ID) 
		INNER JOIN $tblMessages M ON M.TOPID = T.ID) 
			INNER JOIN $tblMessages M2 ON M.TOPID = M2.TOPID 
WHERE F.ENABLED = &#039;Y&#039; AND M.ID = ? AND T.ENABLED = &#039;Y&#039; AND M2.ID errstr;
		$sth-&gt;execute($mid, $mid) or die $sth-&gt;errstr;

		unless ( $sth-&gt;rows ) {
			# нет нужного сообщения. Удалили, например
			$mid = 0;
		}
	}
&lt;/code&gt;
Как видишь, пришлось все COUNT заменить на поля, которые пересчитывать при необходимости (добавление/удаление/изменени записей). На самом деле много зависит от размера таблиц, частоты запросов и критичности времени выполнения :)</description>
		<content:encoded><![CDATA[<p>Бы у меня похожий запрос 4 года назад:<br />
<code lang="php"><br />
	if ( $mid ) {<br />
		# ищем по ID сообщения<br />
		$sth = $dbh->prepare("SELECT F.ID, F.NAME, F.DESCR, F.MESS_ORDER, F.MESS_PER_PAGE,<br />
F.DATE_OF_CREATE, F.TOPIC_COUNT, F.MSG_COUNT FMSG_COUNT, F.URL, F.TIME_TO_EDIT, F.MAILING,<br />
IF((T.DATE_OF_CREATE + INTERVAL F.TIME_TO_EDIT MINUTE) > NOW(), 1, 0), TEMPL.CONTENT, T.NAME, T.CONTENT, T.DATE_OF_CREATE,<br />
T.UID, T.NICK, T.MSG_COUNT TMSG_COUNT, T.VIEWCOUNT,<br />
T.STATUS, T.ID, COUNT(M.ID), F.REGISTRATION_REQUIRED, F.CAPTCHA_REQUIRED<br />
FROM ((($tblForums F INNER JOIN $tblTopics T ON F.ID = T.FID)<br />
	INNER JOIN $tblTemplates TEMPL ON F.TEMPLATE2 = TEMPL.ID)<br />
		INNER JOIN $tblMessages M ON M.TOPID = T.ID)<br />
			INNER JOIN $tblMessages M2 ON M.TOPID = M2.TOPID<br />
WHERE F.ENABLED = 'Y' AND M.ID = ? AND T.ENABLED = 'Y' AND M2.ID errstr;<br />
		$sth->execute($mid, $mid) or die $sth->errstr;</p>
<p>		unless ( $sth->rows ) {<br />
			# нет нужного сообщения. Удалили, например<br />
			$mid = 0;<br />
		}<br />
	}<br />
</code><br />
Как видишь, пришлось все COUNT заменить на поля, которые пересчитывать при необходимости (добавление/удаление/изменени записей). На самом деле много зависит от размера таблиц, частоты запросов и критичности времени выполнения :)</p>
]]></content:encoded>
	</item>
</channel>
</rss>
