powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Правильно указать min и max
72 сообщений из 72, показаны все 3 страниц
Правильно указать min и max
    #39588922
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго всем дня. Подскажите пожалуйста как правильно составить запрос, чтобы минимальные и максимальные интервалы выбирались не по всей длинне, а пока документирует один и тот же человек. Сейчас поясню. Есть длинные скважина, пока ее бурили сменилось 3 смены, документировали ее несколько людей. Например, от 0 до 8 метров Петров, от 8 до 100 Сидоров, от 100 до 200 снова Петров и от 200 до 300 снова Сидоров. Когда просто использую min/max, то берет все по макисимуму, типо от 0 до 200 Петров. А мне надо чтобы было видно кто за какой интервал отвечает.

declare @t table (holeid varchar, from int, to int, name varchar, value varchar );
insert into @t values
( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 300, 'Lith_LoggedBy', 'Сидоров' )

Мой запрос таков
select holeid, min(geolfrom)minFROM, max(GEOLTO)maxTO, name, value from TABLE
where name = 'Lith_LoggedBy' and holeid = 'hr-1' group by holeid, name, value order by minFROM
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588924
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
katish444,

MAX(value) OVER (PARTTION BY value)
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588928
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TaPaK, спасибо большое, а это куда вставить?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588930
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
katish444,
ох... ну как-то так
Код: sql
1.
2.
select holeid, min(geolfrom)minFROM OVER (PARTTION BY value) max(GEOLTO)maxTO OVER (PARTTION BY value), name, value from TABLE
where name = 'Lith_LoggedBy' and holeid = 'hr-1' 
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588933
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TaPaK, не работает...
Incorrect syntax near the keyword 'OVER'.
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588935
katish444,

запятулю пропустил. или скуль сервер не той системы....
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588936
Kopelly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
katish444,
Тебе нужны строчки такого вида:
Протокол буренияПетров с 0 до 8 и с 100 до 200Сидоров с 8 до 100 и с 200 до 300
?

Или нужно объединение интервалов. то есть из:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
declare @t table (holeid varchar, from int, to int, name varchar, value varchar );
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )



Получить:
holeid from to name value hr-1 0 8 Lith_LoggedBy Петровhr-1 8 100 Lith_LoggedBy Сидоровhr-1 100 200 Lith_LoggedBy Петровhr-1 200 300 Lith_LoggedBy Сидоров?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588937
TaPaKkatish444,
ох... ну как-то так
Код: sql
1.
2.
select holeid, min(geolfrom) minFROM OVER (PARTTION BY value) ,  max(GEOLTO) maxTO OVER (PARTTION BY value), name, value from TABLE
where name = 'Lith_LoggedBy' and holeid = 'hr-1' 
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588938
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый Э - Эх,
не запятые я все расставила, sql 2012
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588939
katish444,

а, опять бурение дырок?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588941
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kopelly,
да точно! Как вы так получили
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588942
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый Э - Эх, не дырок, а скважин глубокого бурения))))
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588943
ещё ключевое слово PARTITION указан с ошибкой
Добрый Э - ЭхTaPaKkatish444,
ох... ну как-то так
Код: sql
1.
2.
select holeid, min(geolfrom) minFROM OVER (PARTTION BY value) ,  max(GEOLTO) maxTO OVER (PARTTION BY value), name, value from TABLE
where name = 'Lith_LoggedBy' and holeid = 'hr-1' 


нужно заменить PARTTION на PARTITION
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588944
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый Э - Эх,

для сааааавсем ленивых, ещё и алиасы передвинуть
Код: sql
1.
2.
select holeid, min(geolfrom) OVER (PARTTION BY value) as minFROM,  max(GEOLTO) OVER (PARTTION BY value) as maxTO, name, value from TABLE
where name = 'Lith_LoggedBy' and holeid = 'hr-1' 
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588945
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый Э - Эх,

факир не проснулся :)
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588946
katish444Kopelly,
да точно! Как вы так получилиискать сообщения с моим участием и по ключевым словам "инвариант группы", "START_OF_GROUP" "GRP_ID"
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588947
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kopelly, подскажите пожалуйста как у вас все получилось?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588949
Kopelly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
katish444Kopelly,
да точно! Как вы так получили
Так в чем задача? Получить протокол из двух строк или объединить интервалы?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588951
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kopelly, нужно знать кто документировал интервал.
Да, объединить нужно где это возможно
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588955
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый Э - Эх,Incorrect syntax near 'PARTTION'.
блин блинский
почему у меня не выходит
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588956
xenix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
katish444,

PARTITION
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588958
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TaPaK, мой скрипт не верен даже с вашими исправлениями - выдает не то что надо
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588960
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kopelly,
откройте секрет, как вы получили вторую таблицу?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588962
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
katish444TaPaK, мой скрипт не верен даже с вашими исправлениями - выдает не то что надо
он даёт то что вы просили, а то что вы не в состояние озвучить тз, это не проблема енотов
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588963
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
откройте пожалуйста секрет, как получить вторую таблицу?
Kopellykatish444,
Тебе нужны строчки такого вида:
Протокол буренияПетров с 0 до 8 и с 100 до 200Сидоров с 8 до 100 и с 200 до 300
?

Или нужно объединение интервалов. то есть из:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
declare @t table (holeid varchar, from int, to int, name varchar, value varchar );
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )



Получить:
holeid from to name value hr-1 0 8 Lith_LoggedBy Петровhr-1 8 100 Lith_LoggedBy Сидоровhr-1 100 200 Lith_LoggedBy Петровhr-1 200 300 Lith_LoggedBy Сидоров?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588965
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TaPaK, он выдают что от 0 до 200 документировал Петров...
Это не то что я просила
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588967
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TaPaK, подскажите пожалуйста каким образом Koppely получил вторую таблицу?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588969
Kopelly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
katish444,

declare @t table (holeid varchar(5), geolfrom int, geolto int, name varchar(15), value varchar(10));
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )



Select a.holeid, min(a.geolfrom),max(a.geolto),a.name,a.value From @t a
outer apply (Select top 1 * From @t b Where a.holeid = b.holeid and a.name = b.name and a.geolfrom > b.geolfrom and a.value <> b.value Order by b.geolfrom desc) b
group by a.holeid,a.name,a.value,b.geolto
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588978
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо большое
Можно злоупотребить и спросить для "особо одаренных"
у меня sql прям вешается, он как бы и не ругается что неверно, но и скрипт не отрабатывает, условие
where name = 'Lith_LoggedBy' and holeid = 'hr-1' я вставила везде где только можно.
У меня около 30 000 скважин, и на каждую записей в поле name около 500
Как мне быть, почему он виснет? что не так?

Kopelly
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
katish444,

declare @t table (holeid varchar(5), geolfrom int, geolto int, name varchar(15), value varchar(10));
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )



Select a.holeid, min(a.geolfrom),max(a.geolto),a.name,a.value From @t a
outer apply (Select top 1 * From @t b Where a.holeid = b.holeid and a.name = b.name and a.geolfrom > b.geolfrom and a.value <> b.value Order by b.geolfrom desc) b
group by a.holeid,a.name,a.value,b.geolto
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588980
katish444,

держи, горемычная....
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
declare @t table (holeid varchar(30), [from] int, [to] int, name varchar(30), value varchar(30) );
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )


select holeid, name, value, min([from]) as minfrom, max([to]) as maxto
  from (
         select *
		      , row_number() over(partition by holeid, value order by [from]) - 
			    row_number() over(partition by holeid order by [from]) as grp_id
		   from @t
       ) v
 group by holeid, name, value, grp_id
 order by minfrom
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588984
katish444Спасибо большое
Можно злоупотребить и спросить для "особо одаренных"
у меня sql прям вешается, он как бы и не ругается что неверно, но и скрипт не отрабатывает, условие
where name = 'Lith_LoggedBy' and holeid = 'hr-1' я вставила везде где только можно.
У меня около 30 000 скважин, и на каждую записей в поле name около 500
Как мне быть, почему он виснет? что не так?
достала ты сервер. вот он и вешается от тебя и твоих запросов к нему...


З.Ы.
А если серьезно, то без информации о структуре таблиц и схемы её индексирования, количестве данных и их распределения, настройках сервера и текущего распределения и сбора статистики - никто тебе не скажет, почему твой сервер тормозит.
Может индексов не хватает, может статистика устарела. и таких "может" - страницы топика не хватит, чтобы все перечислить...
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588991
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не объединяет он.... пишет все подряд интервалы
P.S. TSV - это типо фамилия

[img=]


Добрый Э - Эхkatish444,

держи, горемычная....
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
declare @t table (holeid varchar(30), [from] int, [to] int, name varchar(30), value varchar(30) );
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )


select holeid, name, value, min([from]) as minfrom, max([to]) as maxto
  from (
         select *
		      , row_number() over(partition by holeid, value order by [from]) - 
			    row_number() over(partition by holeid order by [from]) as grp_id
		   from @t
       ) v
 group by holeid, name, value, grp_id
 order by minfrom
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588994
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Йахуууууууууу!
Вы же супер гениальные люди тут седите

Спасибо всем большое!

Kopelly
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
katish444,

declare @t table (holeid varchar(5), geolfrom int, geolto int, name varchar(15), value varchar(10));
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )



Select a.holeid, min(a.geolfrom),max(a.geolto),a.name,a.value From @t a
outer apply (Select top 1 * From @t b Where a.holeid = b.holeid and a.name = b.name and a.geolfrom > b.geolfrom and a.value <> b.value Order by b.geolfrom desc) b
group by a.holeid,a.name,a.value,b.geolto
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588995
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый Э - Эх,
Спасибо большое добрые люди)))
Наконец-то получилось, аж плясать охото
Ура! Ура! Ура!
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588996
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
katish444, сидите*
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39588997
katish444,

но хоть доработал до конца, выдав результат, и то уже радует.... :)

а по проблеме - скорее всего, ты в первом своем сообщении наименования полей и данные к ним перепутала. проверь ещё раз свою определение таблицы и её заполнение данными (в стартовом сообщении топика).
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589003
katish444,

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


Какой вариант по итогу заработал и выдал правильные данные? и Почему первый раз "не собрало"?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589006
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
for fun
в производительности не уверен, но в один проход должно работать

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
declare @t table (holeid varchar(255), f int, t int, name varchar(255), value varchar(255) );
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )


SELECT DISTINCT
	ISNULL(CASE LEAD(value) OVER ( ORDER BY f) WHEN value THEN f ELSE LAG(f) OVER ( ORDER BY f) END	,MIN(f)),
	ISNULL(CASE LEAD(value) OVER ( ORDER BY f) WHEN value THEN t ELSE LAG(t) OVER ( ORDER BY f) END	,min(t))
	HoleId,
	Name,
	Value
FROM @t
GROUP BY holeid,value,f,t,name
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589008
TaPaKfor fun
в производительности не уверен, но в один проход должно работать

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
declare @t table (holeid varchar(255), f int, t int, name varchar(255), value varchar(255) );
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )


SELECT DISTINCT
	ISNULL(CASE LEAD(value) OVER ( ORDER BY f) WHEN value THEN f ELSE LAG(f) OVER ( ORDER BY f) END	,MIN(f)),
	ISNULL(CASE LEAD(value) OVER ( ORDER BY f) WHEN value THEN t ELSE LAG(t) OVER ( ORDER BY f) END	,min(t))
	HoleId,
	Name,
	Value
FROM @t
GROUP BY holeid,value,f,t,name


не взлетит... для примера проверь на таких данных:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
declare @t table (holeid varchar(255), f int, t int, name varchar(255), value varchar(255) );
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 10, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 10, 20, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 2, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589011
Добрый Э - ЭхTaPaKfor fun
в производительности не уверен, но в один проход должно работать

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
declare @t table (holeid varchar(255), f int, t int, name varchar(255), value varchar(255) );
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )


SELECT DISTINCT
	ISNULL(CASE LEAD(value) OVER ( ORDER BY f) WHEN value THEN f ELSE LAG(f) OVER ( ORDER BY f) END	,MIN(f)),
	ISNULL(CASE LEAD(value) OVER ( ORDER BY f) WHEN value THEN t ELSE LAG(t) OVER ( ORDER BY f) END	,min(t))
	HoleId,
	Name,
	Value
FROM @t
GROUP BY holeid,value,f,t,name


не взлетит... для примера проверь на таких данных:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
declare @t table (holeid varchar(255), f int, t int, name varchar(255), value varchar(255) );
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 10, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 10, 20, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 20, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )


небольшая опечаточка закралась.... но сути не меняет - не взлетит...
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589013
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый Э - Эх, заработал первый скрипт от Kopelly
я его и использовала
Ваш скрипт почему то не берет min/max я прислала скрин выше, он почему то берет все подряд интервалы
Но все равно спаисбо
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589014
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Этот тоже все подряд интервалы выдает

TaPaKfor fun
в производительности не уверен, но в один проход должно работать

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
declare @t table (holeid varchar(255), f int, t int, name varchar(255), value varchar(255) );
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )


SELECT DISTINCT
	ISNULL(CASE LEAD(value) OVER ( ORDER BY f) WHEN value THEN f ELSE LAG(f) OVER ( ORDER BY f) END	,MIN(f)),
	ISNULL(CASE LEAD(value) OVER ( ORDER BY f) WHEN value THEN t ELSE LAG(t) OVER ( ORDER BY f) END	,min(t))
	HoleId,
	Name,
	Value
FROM @t
GROUP BY holeid,value,f,t,name
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589015
katish444,

я тебе выложил готовый тест-кейс, с тестовыми данными и запросом. Запрос всё отлично собирает. Если у тебя другой результат - значит ты что-то сделала не так.... Проверь всё ещё раз. ;)
Либо приведи прям те самые данные, на которых он не отработал...
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589017
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребята, спасибо всем большое за помощь

Это мега здорово, что есть такие люди небезразличные к чужим мозговым мучениям
Спасибо
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589018
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сейчас попробую еще раз отработать
У меня данные другие, возможно я не везде поменяла именя своих таблиц
Добрый Э - Эхkatish444,

я тебе выложил готовый тест-кейс, с тестовыми данными и запросом. Запрос всё отлично собирает. Если у тебя другой результат - значит ты что-то сделала не так.... Проверь всё ещё раз. ;)
Либо приведи прям те самые данные, на которых он не отработал...
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589020
Kopelly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
katish444Ваш скрипт почему то не берет min/max я прислала скрин выше, он почему то берет все подряд интервалы
Скрипт Доброго Э-ЭХа работает на тестовом наборе, должен работать и на рабочей таблице.
Может неправильно перенесли на рабочую таблицу?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589032
katish444Этот тоже все подряд интервалы выдает

TaPaKfor fun
в производительности не уверен, но в один проход должно работать

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
declare @t table (holeid varchar(255), f int, t int, name varchar(255), value varchar(255) );
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )


SELECT DISTINCT
	ISNULL(CASE LEAD(value) OVER ( ORDER BY f) WHEN value THEN f ELSE LAG(f) OVER ( ORDER BY f) END	,MIN(f)),
	ISNULL(CASE LEAD(value) OVER ( ORDER BY f) WHEN value THEN t ELSE LAG(t) OVER ( ORDER BY f) END	,min(t))
	HoleId,
	Name,
	Value
FROM @t
GROUP BY holeid,value,f,t,name

этот вариант завязан на "магию" данных. в общем случае - он нерабочий. нет "магии" - нет правильного результата ;) :)
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589034
TaPaK,

lead/lag прикрутить можно, конечно, но только в таком вот исполнении:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
declare @t table (holeid varchar(255), f int, t int, name varchar(255), value varchar(255) );
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 80, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 80, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 120, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 120, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )


select holeid, name, value, min(f) min_f, max(f) max_f
  from (
         select *, sum(start_of_group) over(partition by holeid order by f) as grp_id 
           from (
                  SELECT *
                       , case lag(value) over(partition by holeid order by f) 
                           when value 
                             then 0 
                           else 1 
                         end as start_of_group
                    FROM @t
                ) v0
       ) v1
 group by holeid, name, value, grp_id
 order by min_f
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589038
Добрый Э - Эх,

с lead будет так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
declare @t table (holeid varchar(255), f int, t int, name varchar(255), value varchar(255) );
insert into @t values 
 ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 50, 80, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 80, 100, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 100, 120, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 120, 150, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' )
, ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' )
, ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )


select holeid, name, value, min(f) min_f, max(f) max_f
  from (
         select *, sum(start_of_group) over(partition by holeid order by f) as grp_id 
           from (
                  SELECT *
                       , case lead(value) over(partition by holeid order by f desc) 
                           when value 
                             then 0 
                           else 1
                         end as start_of_group
                    FROM @t
                ) v0
       ) v1
 group by holeid, name, value, grp_id
 order by min_f
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589049
Kopelly,

если не секрет, где в Красноярске трудишься?

З.Ы.
2 модераторы...
сорри за злостный оффтоп :)
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589053
Kopelly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый Э - Эх,

Секрет. Тебе-то зачем?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589055
Kopelly,

для общего развития... ;) :)
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589058
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в безвоздмездной техподдерже оленей в sql (типо меня)))
KopellyДобрый Э - Эх,

Секрет. Тебе-то зачем?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589060
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый Э - Эх,

вот зануда, всё равно 1 проход против 10

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
;WITH x AS
(
	SELECT 
		[r] = RANK() OVER (ORDER BY Value )	,
		[n] = ROW_NUMBER() OVER (ORDER BY f DESC)	,
		f,t,
		HoleId,
		Name,
		Value
	FROM @t
), y AS
(
	SELECT 	
		m = CASE WHEN LEAD(r) OVER (ORDER BY f) <> r OR n = 1 THEN  t ELSE NULL END,	*
	FROM x
)
SELECT 
	LAG(m,1,f) OVER (ORDER BY m),
	m,
	Name,
	Value
FROM y
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589064
TaPaK,

если я в варианте на разности двух разнооконных ROW_NUMBER-ов запрячу в CTE предварительные вычисления, то тоже один проход и получится.... Ещё и с меньшим числом вызовов оконных функций...
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589065
katish444в безвоздмездной техподдерже оленей в sql (типо меня)))
KopellyДобрый Э - Эх,

Секрет. Тебе-то зачем?а ты давай не юли, а говори - смогла перенести на свои таблицы-поля мой вариант запроса?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589069
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
с виртуальной таблицей смогла, выдало то, что надо
как со своими данными начинаю работать - другие результаты
кажется у меня кривые руки

О! Надо это сделать подписью в своем аккаунте

Добрый Э - Эхkatish444в безвоздмездной техподдерже оленей в sql (типо меня)))
пропущено...
а ты давай не юли, а говори - смогла перенести на свои таблицы-поля мой вариант запроса?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589070
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый Э - ЭхTaPaK,

если я в варианте на разности двух разнооконных ROW_NUMBER-ов запрячу в CTE предварительные вычисления, то тоже один проход и получится.... Ещё и с меньшим числом вызовов оконных функций...
а так что-ли 2 прохода по вашему... прям магия cte....
я сравнивал с OUTER APPLY
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589071
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проверяю, появилась ли подпись
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589079
TaPaK,

по-моему: проход - это один уровень вложенности запроса. вне зависимости от того, сколько раз в итоге сервер будет бегать по одним и тем же таблицам. Если он свернет три уровня вложенности запроса с lead/lag до одного скана таблицы - то честь и хвала ему. Но для меня запрос будет всё одно иметь три уровня вложенности. И я его для себя буду называть "трех проходным".

З.Ы.
Это исключительно для понимания используемой мною терминологии...
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589084
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый Э - ЭхTaPaK,

по-моему: проход - это один уровень вложенности запроса. вне зависимости от того, сколько раз в итоге сервер будет бегать по одним и тем же таблицам. Если он свернет три уровня вложенности запроса с lead/lag до одного скана таблицы - то честь и хвала ему. Но для меня запрос будет всё одно иметь три уровня вложенности. И я его для себя буду называть "трех проходным".

З.Ы.
Это исключительно для понимания используемой мною терминологии...
я так понимаю что ROW_NUMBER для вас штука с безумным количеством проходов... ну ок
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589095
TaPaKя так понимаю что ROW_NUMBER для вас штука с безумным количеством проходов... ну окты если чего-то не понял - переспроси... я же Добрый, я - объясню....

Повторю еще раз. Для меня проход - это одно вложение select.

вот пример однопроходного запроса:
Код: plaintext
1.
2.
3.
select bla-bla-bla 
  from table where bla-bla
 group by bla
 order by bla

вот пример двухпроходного запроса:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
select bla-bla-bla
  from (
         select bla-bla-bla
           from table
          where bla-bla
          group by bla
          order by bla
       ) v0
 where bla-bla
 group by bla
 order by bla

вот пример трехпроходного запроса:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
select bla-bla-bla
  from (
         select bla-bla-bla
          from (
                 select bla-bla-bla
                   from table
                 where bla-bla
                 group by bla
                 order by bla
               ) v0 
         where bla-bla
         group by bla
         order by bla
       ) v1
 where bla-bla
 group by bla
 order by bla

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

Так понятнее, или требуется ещё более подробное разъяснение?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589098
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый Э - Эх,

ага, а CTE всё меняет?

авторзапрячу в CTE предварительные вычисления, то тоже один проход и получится
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589099
TaPaK,

это ты сказал, что оно все меняет, когда засунул вычисления row_number и rank в CTE, а в основной части запроса сделал lag и утверждал, что тут один проход, а не 10 как у меня.
Я тебе и сказал - что для меня это всё одно будет два прохода. Хоть один ты и вынес в СТЕ. При этом думал, что ты поймешь сарказм. Но видимо - зря надеялся...
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589100
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый Э - ЭхTaPaK,

это ты сказал, что оно все меняет, когда засунул вычисления row_number и rank в CTE, а в основной части запроса сделал lag и утверждал, что тут один проход, а не 10 как у меня.
Я тебе и сказал - что для меня это всё одно будет два прохода. Хоть один ты и вынес в СТЕ. При этом думал, что ты поймешь сарказм. Но видимо - зря надеялся...
развидеть... забыть... срочно
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589126
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я даже не заметила на каком этапе перестала понимать вашу речь

Добрый Э - ЭхTaPaK,

по-моему: проход - это один уровень вложенности запроса. вне зависимости от того, сколько раз в итоге сервер будет бегать по одним и тем же таблицам. Если он свернет три уровня вложенности запроса с lead/lag до одного скана таблицы - то честь и хвала ему. Но для меня запрос будет всё одно иметь три уровня вложенности. И я его для себя буду называть "трех проходным".

З.Ы.
Это исключительно для понимания используемой мною терминологии...
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589130
katish444
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
о, тут я поняла! вы имеете ввиду подзапрос
Добрый Э - ЭхTaPaKя так понимаю что ROW_NUMBER для вас штука с безумным количеством проходов... ну окты если чего-то не понял - переспроси... я же Добрый, я - объясню....

Повторю еще раз. Для меня проход - это одно вложение select.

вот пример однопроходного запроса:
Код: plaintext
1.
2.
3.
select bla-bla-bla 
  from table where bla-bla
 group by bla
 order by bla

вот пример двухпроходного запроса:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
select bla-bla-bla
  from (
         select bla-bla-bla
           from table
          where bla-bla
          group by bla
          order by bla
       ) v0
 where bla-bla
 group by bla
 order by bla

вот пример трехпроходного запроса:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
select bla-bla-bla
  from (
         select bla-bla-bla
          from (
                 select bla-bla-bla
                   from table
                 where bla-bla
                 group by bla
                 order by bla
               ) v0 
         where bla-bla
         group by bla
         order by bla
       ) v1
 where bla-bla
 group by bla
 order by bla

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

Так понятнее, или требуется ещё более подробное разъяснение?
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589137
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
katish444,

авторвы имеете ввиду подзапрос
не, он считает количество SELECT и говорит "раз проход"... так наверное удобнее
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589220
Руслан Дамирович
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
DECLARE @t TABLE ( [holeid] VARCHAR(30), [from] INT, [to] INT, [name] VARCHAR(30), [value] VARCHAR(30) );
INSERT INTO @t VALUES 
  ( 'hr-1', 0, 8, 'Lith_LoggedBy', 'Петров' ),
  ( 'hr-1', 8, 50, 'Lith_LoggedBy', 'Сидоров' ),
  ( 'hr-1', 50, 100, 'Lith_LoggedBy', 'Сидоров' ),
  ( 'hr-1', 100, 150, 'Lith_LoggedBy', 'Петров' ),
  ( 'hr-1', 150, 200, 'Lith_LoggedBy', 'Петров' ),
  ( 'hr-1', 200, 250, 'Lith_LoggedBy', 'Сидоров' ),
  ( 'hr-1', 250, 300, 'Lith_LoggedBy', 'Сидоров' )
;
WITH
t0 AS (
  SELECT 
    [holeid],
    [from],
    [to],
    [name],
    [value],
    [gn] = ROW_NUMBER() OVER ( PARTITION BY [holeid], [name] ORDER BY [to] )
         - ROW_NUMBER() OVER ( PARTITION BY [holeid], [name], [value] ORDER BY [to] )
  FROM
    @t
)
SELECT
  [holeid],
  [name],
  [value],
  [from] = MIN( [from] ),
  [to] = MAX( [to] )
FROM
  t0
GROUP BY
  [holeid],
  [name],
  [value],
  [gn]
ORDER BY
  [holeid],
  [name],
  [from]
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589224
Руслан Дамирович
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Рукалоб. Тут уже три страницы ответов. *Ушел за кофе*.
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589225
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Руслан Дамирович,

21129672
...
Рейтинг: 0 / 0
Правильно указать min и max
    #39589226
Руслан Дамирович
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaKРуслан Дамирович,
21129672
Да-да-да. Пинать меня ссаными тряпками до полного пробуждения.
...
Рейтинг: 0 / 0
72 сообщений из 72, показаны все 3 страниц
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Правильно указать min и max
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]