﻿<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Релиб / SQL Server / Базы данных  / Может будут у кого умные мысли по этому поводу...? / Latest Posts</title><generator>InstantForum.NET v4.1.4</generator><description>Релиб</description><link>http://www.relib.com/forums/</link><webMaster>robot@relib.com</webMaster><lastBuildDate>Tue, 07 Oct 2008 17:18:24 GMT</lastBuildDate><ttl>20</ttl><item><title>RE: Может будут у кого умные мысли по этому поводу...?</title><link>http://www.relib.com/forums/Topic915067-22-1.aspx</link><description>спасибо за советы всем) но решил сделать проще)&lt;/P&gt;&lt;P&gt;создать темповую табличку и заполнить её с помощью курсора)&lt;/P&gt;&lt;P&gt;т.е. ставить у всех полей с айди эвента = 1 курсор, и записывать его и предыдущее значение в темп табличку) в итоге результат оказался таким, каким нужен был)</description><pubDate>Thu, 02 Aug 2007 15:57:35 GMT</pubDate><dc:creator>LdEsT</dc:creator></item><item><title>RE: Может будут у кого умные мысли по этому поводу...?</title><link>http://www.relib.com/forums/Topic915067-22-1.aspx</link><description>Не уверен что это лучшее решение, но вроде работает:&lt;/P&gt;&lt;P&gt;create table #t1&lt;BR&gt;(&lt;BR&gt;[id] int primary key identity(1,1),&lt;BR&gt;iEvent_ID int not null,&lt;BR&gt;iUser_ID int not null,&lt;BR&gt;dtWhen datetime NOT NULL,&lt;BR&gt;)&lt;BR&gt;insert into #t1 values (3, 32, '20051125')&lt;BR&gt;insert into #t1 values (1, 32, '20051124')&lt;BR&gt;insert into #t1 values (4, 31, '20051121')&lt;BR&gt;insert into #t1 values (5, 32, '20051122')&lt;BR&gt;-- Запрос&lt;BR&gt;select * from #t1&lt;BR&gt;where [id] = (SELECT TOP 1 [id] FROM #t1 WHERE iUser_ID=32 AND iEvent_ID=1 ORDER BY dtWhen DESC)&lt;BR&gt;or [id] = (SELECT TOP 1 [id] FROM #t1 WHERE iUser_ID=32 AND dtWhen&amp;lt;(SELECT TOP 1 dtWhen FROM #t1 WHERE iUser_ID=32 AND iEvent_ID=1 ORDER BY dtWhen DESC))&lt;BR&gt;----------------&lt;BR&gt;drop table #t1</description><pubDate>Wed, 01 Aug 2007 12:06:35 GMT</pubDate><dc:creator>bazile</dc:creator></item><item><title>RE: Может будут у кого умные мысли по этому поводу...?</title><link>http://www.relib.com/forums/Topic915067-22-1.aspx</link><description>имеет право на существование, но всё равно не то...&lt;/P&gt;&lt;P&gt;ведь записей может быть много...допустим 11/11/2007 пользователь зашёл...т.е. ид события 1, потом что-то поделал и вышел 12/11/2007 грубо говоря....потом зашёл 15/11/2007....&lt;/P&gt;&lt;P&gt;и надо выбрать какраз-таки все входы и события, им предшествующие</description><pubDate>Wed, 01 Aug 2007 10:28:05 GMT</pubDate><dc:creator>LdEsT</dc:creator></item><item><title>RE: Может будут у кого умные мысли по этому поводу...?</title><link>http://www.relib.com/forums/Topic915067-22-1.aspx</link><description>Можно попробовать так:&lt;BR&gt;[code]&lt;BR&gt;SELECT TOP 2 (*) &lt;BR&gt;FROM    stat &lt;BR&gt;WHERE  ( iUser_ID = 32 )&lt;BR&gt;            and&lt;BR&gt;           ( [Date] &amp;lt;= 'моядата' )&lt;BR&gt;ORDER BY [Date] Desc&lt;BR&gt;[/code]</description><pubDate>Wed, 01 Aug 2007 10:04:51 GMT</pubDate><dc:creator>slamer</dc:creator></item><item><title>RE: Может будут у кого умные мысли по этому поводу...?</title><link>http://www.relib.com/forums/Topic915067-22-1.aspx</link><description>в этом случае выберутся все события, а мне нужны только с айди 1 и событие перед оным...</description><pubDate>Wed, 01 Aug 2007 09:24:21 GMT</pubDate><dc:creator>LdEsT</dc:creator></item><item><title>RE: Может будут у кого умные мысли по этому поводу...?</title><link>http://www.relib.com/forums/Topic915067-22-1.aspx</link><description>Отбор по ID юзера не подходит? Вроде SELECT * FROM stat WHERE iUser_ID=32 ORDER BY [Date].</description><pubDate>Tue, 31 Jul 2007 17:15:58 GMT</pubDate><dc:creator>bazile</dc:creator></item><item><title>Может будут у кого умные мысли по этому поводу...?</title><link>http://www.relib.com/forums/Topic915067-22-1.aspx</link><description>Задача следущая:&lt;P&gt;есть табличка статистики. в ней есть поле типа действия, даты и времени, когда данное действие было совершено..Как выбрать из неё все поля со значением типа действия = 1 и предшествующим действием?&lt;/P&gt;&lt;P&gt;т.е. к примеру есть событие 22/11/2005 ( пользователь с айдишником 32 что-либо сделал)и тип действия равен , к примеру, 5&lt;/P&gt;&lt;P&gt;и есть событие 24/11/2005 ( пользователь с айдишником 32 что-либо сделал) с типом 1... между этими записями может быть всё, что угодно...&lt;/P&gt;&lt;P&gt;как заставить sql выдать только эти 2 строки и нничего более?&lt;/P&gt;&lt;P&gt;Может кто-нибудь подскажет, как это сделать одним запросом?</description><pubDate>Tue, 31 Jul 2007 17:07:57 GMT</pubDate><dc:creator>LdEsT</dc:creator></item></channel></rss>