Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Помогите разобраться с запросом / 7 сообщений из 7, страница 1 из 1
02.06.2008, 09:58
    #35348269
***Михаил***
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с запросом
Всем привет!
Есть запрос основанный на трех таблицах связанных меж собой, одна из этих трех таблиц содержит код, всякую инфу и три колонки с датами, эта таблица содержащая даты постоянно меняется на аналогичную таблицу, те если сегодня в последне колонке стоит 02.06.2008, в средней 30.05.2008, в первой 29.05.2008 то завтра будет стоять следующие число месяца но уже в первой колонке, потом изменения будут внесены в среднюю и последнюю колонку.
Эти три колонки в запросе ([]&" "&[]) мне нужно чтоб отброжалось только последнее число месяца.
Подскажите пожалуйста че делать.
СПАСИБО!!!!!
...
Рейтинг: 0 / 0
02.06.2008, 10:06
    #35348280
gardenman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с запросом
Это значит от первого дня следующего месяца отнять 1 день. Так что-ли?
...
Рейтинг: 0 / 0
02.06.2008, 10:12
    #35348287
***Михаил***
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с запросом
это значит что данные в таблице постоянно меняются, а эти числа произвольно попадают либо в первую либо во вторуб либо в третюю колонку. те. текущее число может оказаться где угодно из трех колонок. Это текущее число будет > всех остальных по дате. Надо чтоб в запросе оно отоброжалось отсеевая все числа которые меньше.
ТЕ чтоб постоянно не менять запрос мне надо чтоб сегоднешнее число отброжалось а числа 30 и 29 отсеевались в запросе, завтра мне надо будет чтоб отброжалось 3 а 30 и 29 отсеевались. Можно ли это сделать не меняя постоянно значений в запросе
...
Рейтинг: 0 / 0
02.06.2008, 10:22
    #35348317
***Михаил***
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с запросом
***Михаил*** числа 30 и 29 отсеевались в запросе, завтра мне надо будет чтоб отброжалось 3 а 30 и 2 отсеевались. Можно ли это сделать не меняя постоянно значений в запросе
...
Рейтинг: 0 / 0
03.06.2008, 23:05
    #35352614
gardenman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с запросом
Я вообще то мало что понял, и вникать лень...

Хотя обычно, чтобы получить последний день месяца надо взять первое число следующего месяца и отнять один день.
На DB2 это примерно так:





Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
connect to test

   Database Connection Information

 Database server        = DB2/NT  9 . 5 . 0 
 SQL authorization ID   = DB2ADMIN
 Local database alias   = TEST


values date( rtrim(char(year(current date)))||'-'|| rtrim(case when month(curren
t date) <=  9  then '0'|| char(month(current date)+ 1 ) when month(current date) <=
 11  then char(month(current date)+ 1 ) else '01' end) ||'-01') - 1  day

 1 
----------
 30 . 06 . 2008 

   1  record(s) selected.


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
values 
    date(
        rtrim(char(year(current date)))||'-'||
        rtrim(case 
                  when month(current date) <=  9  then '0'|| char(month(current date)+ 1 )
                  when month(current date) <=  11  then char(month(current date)+ 1 )
                  else '01'
               end)
        ||'-01'
    ) -  1  day
...
Рейтинг: 0 / 0
10.06.2008, 15:37
    #35367337
golsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с запросом
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
select 
  ...,
  case 
    when Date1 = @Date then <значения для колонки  1 >
    when Date2 = @Date then <значения для колонки  2 >
    when Date3 = @Date then <значения для колонки  3 >
  end,
  ...,
from MyTable
where Date1 = @Date or Date2 = @Date or Date3 = @Date

где @Date = '20080603'  -- 3 июня 2008, на пример
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
07.02.2012, 14:43
    #37650220
Shahlo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите разобраться с запросом
У меня типа такая же ситуация при работе на DB2, с таблицей test возникла необходимость получения результата. Далее стоит вопрос, как определить текущую дату на прошедший год, чтобы производилось суммирование с начала года прошлого года до текущей даты прошлого года, чтобы можно было производить операции сравнения с текущим годом и текущей датой. Например: текущая дата 07.02.2012, необходимо сравнить результаты с начала года с 01.01.2012 до 07.02.2012, с результатами прошлого года с 01.01.2011 до 07.02.2011.
у меня там месяцы как char(2)'02', а год как char(4)'2012', а даты как date '07.02.2012'
это у меня не работает:
data=current date - 1 year
он не плюсует, то что прошло до этого числа прошлого года
...
Рейтинг: 0 / 0
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Помогите разобраться с запросом / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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