Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Опять я с SQL.... / 7 сообщений из 7, страница 1 из 1
07.04.2003, 13:27
    #32134661
ScableR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Опять я с SQL....
Ну, сначала я благодарю cat2 за помощь в решении предыдущей проблемы... Но сейчас появилась новая, которую ну никак не могу решить...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Received                                            Price
+ ----+------------+----------------+--------------+ +----+------------+----------------+-------+
 
| id | in_date    | id_preparation | id_privelege | | id | this_date  | id_preparation | price |
+ ----+------------+----------------+--------------+ +----+------------+----------------+-------+
 
|  1   |  04 . 04 . 2003  |  1               |  1             | |  1   |  04 . 04 . 2003  |  1               |  90 , 00  |
|  2   |  03 . 04 . 2003  |  1               |  1             | |  2   |  03 . 04 . 2003  |  1               |  60 , 00  |
|  3   |  02 . 04 . 2003  |  2               |  2             | |  3   |  02 . 04 . 2003  |  1               |  50 , 00  |
|  4   |  01 . 04 . 2003  |  3               |  1             | |  4   |  02 . 04 . 2003  |  2               |  40 , 00  |
|  5   |  04 . 03 . 2003  |  1               |  1             | |  5   |  01 . 03 . 2003  |  3               |  40 , 00  |
+----+------------+----------------+--------------+ +----+------------+----------------+-------+

Надо произвести выборку из Received по in_date c 01.04.2003 по 04.04.2003 и id_privelege = 1, перейти и получить сумму Price.price по этой выборке с Received.id_preparation = Price.id_preparation и датой, для каждого выбранного значения price.id_preparation равным тому, которое показывает в данный момент Received.in_date. Причем, если нету такого значения , то надо использовать более старое...

Вот такая задачка. Как решить не знаю, зато надеюсь на помощь. (эх, был бы язык Delphi похож на PHP...)

Спасибо за внимание...
...
Рейтинг: 0 / 0
07.04.2003, 13:29
    #32134664
tygra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Опять я с SQL....
(эх, был бы язык Delphi похож на PHP...)

А причем тут Delphi и SQL?
...
Рейтинг: 0 / 0
07.04.2003, 13:32
    #32134669
ScableR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Опять я с SQL....
Фишка в том, что мне надо через ADO сделать запрос этим языком... Вот и все :(......
...
Рейтинг: 0 / 0
07.04.2003, 16:57
    #32134940
Strannik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Опять я с SQL....
Интересная задачка. Только непонятно какие поля выводить и как связывать ...
...
Рейтинг: 0 / 0
07.04.2003, 21:13
    #32135155
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Опять я с SQL....
Лично мне недостаточно информации.

Из какой таблицы надо выбирать дату? Что значит "показывается"?
Какую роль в таблицах имеют поля "id"? Это просто суррогатные ключи?
Что значит "нет даты"?

Опишите задачу словесно. Мол решается следующая задача. В таблицах содержится то-то и то-то.
Надо вывести то-то и то-то.
...
Рейтинг: 0 / 0
08.04.2003, 06:54
    #32135255
LexusR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Опять я с SQL....
если я правильно понял требуемые условия то должно получиться что-то типа
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
select R.in_date, sum(P.price)
from Received R
join Price P on (P.id_preparation = R.id_preparation 
             and P.this_date = (select max(PD.this_date)from Price PD where PD.this_date <= R.in_date and PD.id_preparation = R.id_preparation)
where R.in_date > '01.04.2003'
  and R.in_date < '04.04.2003'
  and R.id_privelege =  1 
group by R.in_date
...
Рейтинг: 0 / 0
08.04.2003, 06:57
    #32135256
LexusR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Опять я с SQL....
включать или не включать крайние даты на усмотрение автора
Код: plaintext
1.
2.
where R.in_date > '01.04.2003'
  and R.in_date =< '04.04.2003'
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Опять я с SQL.... / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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