|
|
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
Уважаемые мастера ! Ни ка не могу справиться с задачей. есть таблица T1 name dt ev -------------------------------------------- Иванов |30.03.2004 9:00 |7 Иванов |30.03.2004 10:00 |8 подскажите как получить из нее одной с помощю одного запроса такую: name dt1 ev1 dt2 ev2 ---------------------------------------------------------- Иванов |30.03.2004 9:00 | 7 |30.03.2004 10:00 |8 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 12:23 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
И что, если записей про Петрова не две, а три, то выходных полей уже не 5, а 7 будет? Нельзя. Если только через вычисляемые (на сервере) поля и хранимые процедуры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 12:40 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
да нет записей дествительно больше, но они обязательно повторяются с 7 и 8. Тогда будет: name dt1 ev1 dt2 ev2 ---------------------------------------------------------- Иванов |30.03.2004 9:00 | 7 |30.03.2004 10:00 |8 Иванов |30.03.2004 10:50| 7 |30.03.2004 11:00 |8 А если с ХП то ка организовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 12:47 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
да нет записей дествительно больше, но они обязательно повторяются с 7 и 8. Тогда будет: name dt1 ev1 dt2 ev2 ---------------------------------------------------------- Иванов |30.03.2004 9:00 | 7 |30.03.2004 10:00 |8 Иванов |30.03.2004 10:50| 7 |30.03.2004 11:00 |8 А если с ХП то ка организовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 12:49 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 12:51 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
select name, max(case ev when 7 then dt end) as dt7, max(case ev when 8 then dt end) as dt8 from T! group by name на это место ругается, ошибка синтаксиса, пропущен оператор? из-за чего ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 13:52 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
Замени "T!" на "T1" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 13:55 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
case ev when Причем здесь Т! и Т1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 14:04 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
Может, у тебя не FB 1.5? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 14:07 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
нет, у меня запрос в delphi через IBQuery ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 14:17 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
1. Сервер какой? InterBase/Yaffil/FireBird ? 2. Если через BDE, то, возможно, он на клиенте проверяет скрипт, и просто не знает конструкции CASE ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 14:24 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
у меня FB 1.5 стоит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 14:24 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
Сервер InterBase ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 14:28 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
Та IB или FB? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 16:01 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
Он прикалывается! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 16:02 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
vi007Причем здесь Т! и Т1 У тебя таблица T1 называется, а у нее поле EV . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 16:06 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
А по серверу надо как-то определится :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2004, 16:08 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
Дак че, ни кто ни может помочь? сервер FB 1.5 клиента пишу на delphi 6 запрос надо сделать через IBQuery Помогите же ламеру в IB и FB! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2004, 06:22 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
Попробуй UDF DtIf из библиотеки rFunc. Вместо: select name, max(case ev when 7 then dt end) as dt7, max(case ev when 8 then dt end) as dt8 from T! group by name сделай так: select name, max(DtIf (ev-7, '01.01.1900 00:00:00', cast(dt as TIMESTAMP))) as dt7, max(DtIf (ev-8, '01.01.1900 00:00:00', cast(dt as TIMESTAMP))) as dt8 from T! group by name ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2004, 09:25 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
че то ни как не получается... Еще есть проблема. По кнопке делаю запрос и с помощю цикла добавляю данные в другую таблицу. for s:=0 to t.IBDataSet1.RecordCount do begin t.Table1.Append; t.Table1CLI_N.Text:=Uchet.IBDataSet1CLI_N.Text; t.Table1F_NAME.Text:=Uchet.IBDataSet1F_NAME.Text; t.Table1DT.Text:=Uchet.IBDataSet1DT.Text; t.Table1EV_TEXT.Text:=Uchet.IBDataSet1EV_TEXT.Text; t.Table1EV_N.Text:=Uchet.IBDataSet1EV_N.Text; t.Table1TMEND.Text:=Uchet.IBDataSet1TMEND.Text; t.Table1TMBEG.Text:=Uchet.IBDataSet1TMBEG.Text; t.Table1.Post; t.IBDataSet1.Next; end; При выполнении добавляются две три строки при повторном - еще строк пять, далее строк двадцать... вчем же дело? Подозреваю с транзакцией... но что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2004, 12:16 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
1. Что выдает при попытке выполнить запрос. 2. for s:=0 to t.IBDataSet1.RecordCount do. Так никто не делает, поскольку кол. запсей часто бывает неизвестно (почему, почитай в Help). Надо так: t.IBDataSet1.First; while not t.IBDataSet1.Eof do ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2004, 12:41 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
Перед for s:=0 to t.IBDataSet1.RecordCount do поставь t.IBDataSet1.FetchAll; Т.к. RecordCount не выдает нормально кол-во записей без вызова FetchAll ... Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2004, 12:52 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
Но таким способом (как я написал) лучше пользоваться, когда ты точно уверен, что записей у тебя не очень много. Иначе будут кранты ... Лучше делать так, как написал FreemanZAV Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2004, 12:55 |
|
||
|
Помогите составить запрос sql
|
|||
|---|---|---|---|
|
#18+
УРА !!!!!!!! В ТОЧКУ!!!! ВСЕ ЗАРАБОТАЛО!!!! СПАСИБО. FreemanZAV t.IBDataSet1.First; while not t.IBDataSet1.Eof do А вот еще:) поле DT типа timeshtamp в нем дата и время. как конвертнуть во время? просто ни когда не встречался я с таким:( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2004, 13:10 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=32464272&tid=1578919]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
42ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
83ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 399ms |

| 0 / 0 |
