<?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://text.md/zadacha-mysql-date/feed/" rel="self" type="application/rss+xml" />
	<link>http://text.md/zadacha-mysql-date/</link>
	<description>Интересные и полезные статьи</description>
	<lastBuildDate>Sat, 04 Feb 2012 01:22:07 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>Автор: Алекс</title>
		<link>http://text.md/zadacha-mysql-date/comment-page-1/#comment-999</link>
		<dc:creator>Алекс</dc:creator>
		<pubDate>Mon, 13 Dec 2010 17:20:20 +0000</pubDate>
		<guid isPermaLink="false">http://text.md/?p=663#comment-999</guid>
		<description>SELECT SUM( DAY(end_date)-DAY(start_date) - IF( DATE(end_date)DATE(&#039;2009-12-04&#039;)

Как то он у тебя странно обрубает контент</description>
		<content:encoded><![CDATA[<p>SELECT SUM( DAY(end_date)-DAY(start_date) &#8212; IF( DATE(end_date)DATE(&#8217;2009-12-04&#8242;)</p>
<p>Как то он у тебя странно обрубает контент</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Алекс</title>
		<link>http://text.md/zadacha-mysql-date/comment-page-1/#comment-998</link>
		<dc:creator>Алекс</dc:creator>
		<pubDate>Mon, 13 Dec 2010 17:18:01 +0000</pubDate>
		<guid isPermaLink="false">http://text.md/?p=663#comment-998</guid>
		<description>SELECT SUM( DAY(end_date)-DAY(start_date) - IF( DATE(end_date)DATE(&#039;2009-09-05&#039;)

Запрос по сути должен выглядеть так</description>
		<content:encoded><![CDATA[<p>SELECT SUM( DAY(end_date)-DAY(start_date) &#8212; IF( DATE(end_date)DATE(&#8217;2009-09-05&#8242;)</p>
<p>Запрос по сути должен выглядеть так</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Aronsky</title>
		<link>http://text.md/zadacha-mysql-date/comment-page-1/#comment-514</link>
		<dc:creator>Aronsky</dc:creator>
		<pubDate>Mon, 29 Mar 2010 11:57:27 +0000</pubDate>
		<guid isPermaLink="false">http://text.md/?p=663#comment-514</guid>
		<description>Мало спецов :-)
Думаю вряд ли хоть кто-нибудь понял твоё решение.</description>
		<content:encoded><![CDATA[<p>Мало спецов <img src='http://text.md/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /><br />
Думаю вряд ли хоть кто-нибудь понял твоё решение.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: PitBult</title>
		<link>http://text.md/zadacha-mysql-date/comment-page-1/#comment-512</link>
		<dc:creator>PitBult</dc:creator>
		<pubDate>Sun, 15 Nov 2009 19:45:08 +0000</pubDate>
		<guid isPermaLink="false">http://text.md/?p=663#comment-512</guid>
		<description>Видать, либо мало спецов по стране, либо всем лень, либо все заняты. Сошлемся на последнее!
Точный запрос не буду вытаскивать, но на начальном уровне он выглядел примерно так:

SELECT bc.b_car_id,
	DATE(bc.b_datetime_start), DATE(bc.b_datetime_end), DATEDIFF(DATE(bc.b_datetime_end), DATE(bc.b_datetime_start)) AS diff,
	IF(DATE(bc.b_datetime_start)&lt; &#039;2009-09-13&#039; AND DATE(bc.b_datetime_end)&gt;&#039;2009-09-30&#039;, DATEDIFF(&#039;2009-09-30&#039;,&#039;2009-09-13&#039;),
		IF(DATE(bc.b_datetime_start)&lt; &#039;2009-09-13&#039;, DATEDIFF(DATE(bc.b_datetime_end), DATE(bc.b_datetime_start)) - DATEDIFF(&#039;2009-09-13&#039;, DATE(bc.b_datetime_start)),
			IF(DATE(bc.b_datetime_end)&gt;&#039;2009-09-30&#039;, DATEDIFF(DATE(bc.b_datetime_end), DATE(bc.b_datetime_start)) - DATEDIFF(DATE(bc.b_datetime_end), &#039;2009-09-30&#039;),
				DATEDIFF(DATE(bc.b_datetime_end), DATE(bc.b_datetime_start))
			)
		)
	) AS days

FROM booking_cars AS bc
WHERE bc.b_car_id = 4 AND
(
DATE(bc.b_datetime_end) BETWEEN &#039;2009-09-13&#039; AND &#039;2009-09-30&#039;
OR DATE(bc.b_datetime_start) BETWEEN &#039;2009-09-13&#039; AND &#039;2009-09-30&#039;
)

Возможно код не читабелен, но кто захочет, разберется! )</description>
		<content:encoded><![CDATA[<p>Видать, либо мало спецов по стране, либо всем лень, либо все заняты. Сошлемся на последнее!<br />
Точный запрос не буду вытаскивать, но на начальном уровне он выглядел примерно так:</p>
<p>SELECT bc.b_car_id,<br />
	DATE(bc.b_datetime_start), DATE(bc.b_datetime_end), DATEDIFF(DATE(bc.b_datetime_end), DATE(bc.b_datetime_start)) AS diff,<br />
	IF(DATE(bc.b_datetime_start)< '2009-09-13' AND DATE(bc.b_datetime_end)>&#8217;2009-09-30&#8242;, DATEDIFF(&#8217;2009-09-30&#8242;,&#8217;2009-09-13&#8242;),<br />
		IF(DATE(bc.b_datetime_start)< '2009-09-13', DATEDIFF(DATE(bc.b_datetime_end), DATE(bc.b_datetime_start)) - DATEDIFF('2009-09-13', DATE(bc.b_datetime_start)),<br />
			IF(DATE(bc.b_datetime_end)>&#8217;2009-09-30&#8242;, DATEDIFF(DATE(bc.b_datetime_end), DATE(bc.b_datetime_start)) &#8212; DATEDIFF(DATE(bc.b_datetime_end), &#8217;2009-09-30&#8242;),<br />
				DATEDIFF(DATE(bc.b_datetime_end), DATE(bc.b_datetime_start))<br />
			)<br />
		)<br />
	) AS days</p>
<p>FROM booking_cars AS bc<br />
WHERE bc.b_car_id = 4 AND<br />
(<br />
DATE(bc.b_datetime_end) BETWEEN &#8217;2009-09-13&#8242; AND &#8217;2009-09-30&#8242;<br />
OR DATE(bc.b_datetime_start) BETWEEN &#8217;2009-09-13&#8242; AND &#8217;2009-09-30&#8242;<br />
)</p>
<p>Возможно код не читабелен, но кто захочет, разберется! )</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Андрей</title>
		<link>http://text.md/zadacha-mysql-date/comment-page-1/#comment-511</link>
		<dc:creator>Андрей</dc:creator>
		<pubDate>Fri, 13 Nov 2009 14:43:56 +0000</pubDate>
		<guid isPermaLink="false">http://text.md/?p=663#comment-511</guid>
		<description>Я конечно не очень понял что у тебя там.. но заметив интервалы подумал о 2-ух вешах.


1. BETWEN
2. Group By last_date,new_date,interval

В первом делай селект конкретно по бетвену - чтоб получить все в том интервале ( сложновато но можно )

Во втором группируй и в ПХП просто If Дата новая не соответствует уже дате входа интервала просто выходишь из цикла.</description>
		<content:encoded><![CDATA[<p>Я конечно не очень понял что у тебя там.. но заметив интервалы подумал о 2-ух вешах.</p>
<p>1. BETWEN<br />
2. Group By last_date,new_date,interval</p>
<p>В первом делай селект конкретно по бетвену &#8212; чтоб получить все в том интервале ( сложновато но можно )</p>
<p>Во втором группируй и в ПХП просто If Дата новая не соответствует уже дате входа интервала просто выходишь из цикла.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

