Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 разъясните если не трудно  [new]
Сергей_gt
Member [заблокирован]

Откуда:
Сообщений: 84
select t1.*, t2.val - t1.val as diff_val
from @t t1
left join @t t2
on t1.id = t2.id - 1

что такое t1 и почему с точкой . t2.val? и что вообще делает данный селект
спасибо большое
2 окт 12, 08:28    [13253501]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
step_ks
Member

Откуда:
Сообщений: 936
t1, как и t2 - псевдоним таблицы @t в этом запросе, t2.val - значение поля val из t2, а селект находит разницу между значениями соседних строк.

Тесты решаете?
2 окт 12, 08:40    [13253532]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
Сергей_gt
select t1.*, t2.val - t1.val as diff_val
from @t t1
left join @t t2
on t1.id = t2.id - 1

что такое t1 и почему с точкой . t2.val? и что вообще делает данный селект
спасибо большое


троллинг продолжается )))))
2 окт 12, 08:58    [13253587]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Сергей_gt
Member [заблокирован]

Откуда:
Сообщений: 84
step_ks
t1, как и t2 - псевдоним таблицы @t в этом запросе, t2.val - значение поля val из t2, а селект находит разницу между значениями соседних строк.

Тесты решаете?

да хочу освоить sql...а ребята подкалывают...сами вы блин тролли....спс большое за ответ
2 окт 12, 09:00    [13253598]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Glory
Member

Откуда:
Сообщений: 104751
Сергей_gt
да хочу освоить sql...а ребята подкалывают...сами вы блин тролли...

Чтение хелпа дает очень многое
http://msdn.microsoft.com/en-us/library/ms176104%28v=sql.105%29.aspx
2 окт 12, 09:21    [13253673]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
step_ks
Member

Откуда:
Сообщений: 936
Сергей_gt
step_ks
t1, как и t2 - псевдоним таблицы @t в этом запросе, t2.val - значение поля val из t2, а селект находит разницу между значениями соседних строк.

Тесты решаете?

да хочу освоить sql...а ребята подкалывают...сами вы блин тролли....спс большое за ответ

кстати, да. спросили бы сразу в той теме у автора запроса.
2 окт 12, 09:24    [13253688]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Сергей_gt
Member [заблокирован]

Откуда:
Сообщений: 84
спс большое всем..жаль вот только на ненашем языке :(...просто когда с джоином работаешь все эти точки буквы и т.д. так смущают..до непонятности...
2 окт 12, 10:19    [13253942]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6727
Сергей_gt
хочу освоить sql
Форум не место.
Купите книжек, наймите репетитора, пойдите на курсы.
Тут не осваивают, здесь решают нетривиальные задачи, обсуждают недокументированные (плохо документированные), неосвещённые и неочевидные вещи. Это форум для специалистов, и тех кто интересуется, но не для школьников.

Иначе вас по IP (и др. способами) начнут банить.
2 окт 12, 10:20    [13253949]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Сергей_gt
Member [заблокирован]

Откуда:
Сообщений: 84
Mnior
Сергей_gt
хочу освоить sql
Форум не место.
Купите книжек, наймите репетитора, пойдите на курсы.
Тут не осваивают, здесь решают нетривиальные задачи, обсуждают недокументированные (плохо документированные), неосвещённые и неочевидные вещи. Это форум для специалистов, и тех кто интересуется, но не для школьников.

Иначе вас по IP (и др. способами) начнут банить.


зря Вы так я не школьник...я буду опытным программистом скоро очень скоро....не надо так ненавидеть людей которые для вас ничего не делали
2 окт 12, 10:38    [13254032]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Alexandr Kr.
Member

Откуда: Украина, Харьков
Сообщений: 165
Сергей_gt
зря Вы так я не школьник...я буду опытным программистом скоро очень скоро....не надо так ненавидеть людей которые для вас ничего не делали


Беда той фирме где будет работать такой "опытный программист" самоучка
2 окт 12, 10:40    [13254044]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6727
Сергей_gt
я не школьник...
Вы школънег. (Это не те шо с ранцами ходять)
2 окт 12, 10:46    [13254080]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Сергей_gt
зря Вы так я не школьник...я буду опытным программистом скоро очень скоро....не надо так ненавидеть людей которые для вас ничего не делали
Лентяев - можно. А вы как раз лентяй. Или тролль. Или с вашего айпишника вовсе сидит стадо троллей. Одного такого вчера побанил за то, что здоровую фотографию женского полового органа прицепил в топик. Вы тоже так будете обижаться?
2 окт 12, 10:48    [13254093]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Сергей_gt
Member [заблокирован]

Откуда:
Сообщений: 84
нет не буду я буду учиться...учиться и еще раз учиться...я не лентяй просто срочность заставляет.....простите его он хороший))))))))))))
2 окт 12, 11:02    [13254173]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Сергей_gt
Member [заблокирован]

Откуда:
Сообщений: 84
Alexandr Kr.
Сергей_gt
зря Вы так я не школьник...я буду опытным программистом скоро очень скоро....не надо так ненавидеть людей которые для вас ничего не делали


Беда той фирме где будет работать такой "опытный программист" самоучка

а вы не самочучка?вам преподавали?все программисты самоучки
2 окт 12, 11:06    [13254202]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Сергей_gt
Member [заблокирован]

Откуда:
Сообщений: 84
Alexandr Kr.
Сергей_gt
зря Вы так я не школьник...я буду опытным программистом скоро очень скоро....не надо так ненавидеть людей которые для вас ничего не делали


Беда той фирме где будет работать такой "опытный программист" самоучка


представляю как вас учили.......итак сегодня у нас тема злорадствуем над неопытными пользователями..итак начнем.....
2 окт 12, 11:08    [13254215]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Glory
Member

Откуда:
Сообщений: 104751
Сергей_gt
представляю как вас учили.......итак сегодня у нас тема злорадствуем над неопытными пользователями..итак начнем...

Нет. Учили так
- Сегодняшняя тема - лечение опухоли мозга подручными способами
Разобьемся на пары. Один из вас будет хирургом, а другой - пациентом.
Все хирурги берут в руки пилу, приставляют ее к голове пациента в районе темени и начинают пилить.
Вот так - хорошо !. Движения - плавнее, жим - сильнее.
- Профессор ! Мой пациент хрипит, дергает руками и ногами и у него из головы и рта течет кровь.

- Все в порядке, ученик. Просто ваш пациент умирает. Оставьте его и возьмите другого.
Через пару десятков пациентов вы станете "опытным программистов"
А эти дураки тратят годы на чтение книг, практику на муляжах и лабораторных крысах.
А вы у меня через пару дней будете распиливать все, что движется
2 окт 12, 11:19    [13254280]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Сергей_gt
Member [заблокирован]

Откуда:
Сообщений: 84
Glory
Сергей_gt
представляю как вас учили.......итак сегодня у нас тема злорадствуем над неопытными пользователями..итак начнем...

Нет. Учили так
- Сегодняшняя тема - лечение опухоли мозга подручными способами
Разобьемся на пары. Один из вас будет хирургом, а другой - пациентом.
Все хирурги берут в руки пилу, приставляют ее к голове пациента в районе темени и начинают пилить.
Вот так - хорошо !. Движения - плавнее, жим - сильнее.
- Профессор ! Мой пациент хрипит, дергает руками и ногами и у него из головы и рта течет кровь.

- Все в порядке, ученик. Просто ваш пациент умирает. Оставьте его и возьмите другого.
Через пару десятков пациентов вы станете "опытным программистов"
А эти дураки тратят годы на чтение книг, практику на муляжах и лабораторных крысах.
А вы у меня через пару дней будете распиливать все, что движется


как один из вариантов....главное чтоб люди оставались людьми а то перегибают палочку некоторые...буду стараться буду трудиться знаю что сложно но все это пригодиться......
или мне вот еще нравиться

It does not matter how slowly you go so long as you do not stop!!!


очень хорошее высказывание которое помогает мне стремиться!!!
2 окт 12, 12:08    [13254635]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Alexandr Kr.
Member

Откуда: Украина, Харьков
Сообщений: 165
Сергей_gt
очень хорошее высказывание которое помогает мне стремиться!!!


Так стремитесь, никто же не запрещает.
Но не за чужой же счет. Вы не приложив никаких усилий пытаетесь получить какойто результат. При этом вопите чтоб быстро все вам помогли т.к. у Вас нет времени.
2 окт 12, 12:10    [13254654]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Сергей_gt
Member [заблокирован]

Откуда:
Сообщений: 84
сделал код считающий слив

 declare @t table ( id int, time datetime, val int )
insert into @t
values  ( 1, '20120921 00:00', 20 )
      , ( 2, '20120921 01:00', 15 )
       ,( 1, '20120921 00:00', 20 )
      , ( 2, '20120921 01:00', 15 )
      , ( 3, '20120921 02:00', 80 )
      , ( 4, '20120921 03:00', 70 )
      , ( 5, '20120921 04:00', 60 )
      , ( 6, '20120921 05:00', 50 )
      , ( 7, '20120921 06:00', 30 )
      , ( 8, '20120921 07:00', 20 )
      , ( 9, '20120921 08:00', 10 )
	 
    
    
    
    declare     @id         int
    declare     @time       datetime
    declare     @val        int
    declare     @diff_vall  int
    declare     @start  int
    declare     @pointstart datetime
    declare     @pointend   datetime
    declare     @k  int
    declare     @vrema   int
 
 
    DECLARE     cursor_checkArea        CURSOR FOR       
        select t1.*, t2.val - t1.val as diff_val 
            from @t t1
        left join @t t2
      on t1.id = t2.id - 1                                                                             
                                                                                                            
    OPEN cursor_checkArea                                                         
    FETCH NEXT FROM cursor_checkArea                                                                           
    INTO     @id,
                @time,
                @val,
                @diff_vall
    SET     @start  =   0                                                                                
                                                                                                            
    WHILE( @@FETCH_STATUS = 0 )                                                                             
    BEGIN 
        
        
        IF  (@diff_vall<0)
            begin 
                if(@start=0)set @pointstart=@time
                set @start=@start-@diff_vall 
                set @k=@k+1
            end
        else
            begin
                if (@k>3 OR @start>20)
                    begin
                        set @pointend = @time
                       
                        select [Nachalo] =@pointstart ,
							   [Konec]=@pointend,
							   [Slito]=@start
                        
                    
                    end
                set @start=0
                set @k=0    
            end
                     
        FETCH NEXT FROM cursor_checkArea
        INTO  @id,
                @time,
                @val,
                @diff_vall
    END
 
    CLOSE cursor_checkArea
    DEALLOCATE cursor_checkArea



теперь такой вопрос
почти похожий код считает сколько залито топлива(изменил только условие IF (@diff_vall<0)
begin
if(@start=0)set @pointstart=@time
set @start=@start-@diff_vall )
как обьединить их?можно ли сделать так чтобы выводилась дата слива-кол-во слива ниже дата заправки кол-во залитого
какие будут идеи?
2 окт 12, 12:17    [13254696]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Alexandr Kr.
Member

Откуда: Украина, Харьков
Сообщений: 165
Это уже третий или четвертый пост с одним и тем же куском кода. Может хватить плодить их уже?
2 окт 12, 12:21    [13254729]     Ответить | Цитировать Сообщить модератору
 Re: разъясните если не трудно  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Сергей_gt
сделал код считающий слив
Слив засчитан. Еще один пост на эту тему, и вы тоже отправитесь в бан.
2 окт 12, 12:22    [13254735]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить