|
помогите с запросом
|
|||
---|---|---|---|
#18+
Привет знатокам запросов :-) прошу тапками сразу не кидаться sql плохо знаю! а тут еще и сервер на каше :-) значит задача следущая! взять следущею дату за последней датой указанной в фирме по отчетам! допустим имеется таблица idid-firmddmmyyyy170101012010270117032010380523042011480501012012580514022012682312092013 -------------------- результат запроса должен получится следующий idid-firmddmmyyyy170118(17)032010280515(14)022012382313(12)092013 в скобках указал даты которые были в начальной таблице ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:05 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
названия полей поменяла, а запрос должно быть такой: Код: sql 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:27 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
Владимир :-) Код: vbnet 1.
Это все отдельные поля? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:28 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
проверьте как сработает у вас, если дата приходится на конец месяца, т.е. было 30.06 должно стать 1.07 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:30 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
krvsaВладимир :-) Код: vbnet 1.
Это все отдельные поля? именно, в этом и есть вся проблема что это отдельные поля! :( ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:31 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
krvsaВладимир :-) Код: vbnet 1.
Это все отдельные поля? навряд ли, во первых какой в этом смысл, во вторых в названии св-ва не может быть точки "." :) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:32 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
Аленочка , если "дата" у автора 3 отдельных поля - твой запрос у него не сработает... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:32 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
Владимир :-)это отдельные поля! :( Ясно... Ща прикинем как тут разрулиться... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:34 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
Аленочкаkrvsaпропущено... Это все отдельные поля? навряд ли, во первых какой в этом смысл, во вторых в названии св-ва не может быть точки "." :) это отдельные поля! точек в реальности нету! просто когда печатал они тут сами поставились! ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:34 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
Владимир :-)krvsaпропущено... Это все отдельные поля? именно, в этом и есть вся проблема что это отдельные поля! :( переведите все ваши отдельные поля в одну дату в формат "horolog" обратно, я надеюсь, новую дату вы не будете разбивать на составляющие? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:35 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
АленочкаВладимир :-)пропущено... именно, в этом и есть вся проблема что это отдельные поля! :( переведите все ваши отдельные поля в одну дату в формат "horolog" обратно, я надеюсь, новую дату вы не будете разбивать на составляющие? очень смешно :-) я обычный рабочий которому дали задание! базу я не состовлял и изменить мне ее не кто не разрешит! так что надо искать другой выход! ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:38 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
Владимир :-) , как вариант... Склеить те поля в строку типа "дата"... Воспользоваться функцией TO_DATE()... http://docs.intersystems.com/cache20131/csp/docbook/DocBook.UI.Page.cls?KEY=RSQL_todate А далее по сченарию от Аленочка . ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:39 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
я бы сделала расчетное св-во в классе где сама дата хранится, которое "соберет" мне нужную дату из частей и юзала бы в запросе именно это расчетное св-во, т.е. дату преобразование: set dateOfH = $zdateh(mm_"."_dd_"."_yyyy,5) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:40 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
Аленочкая бы сделала расчетное св-во в классе Автору не нужно менять класс. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:40 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
Владимир :-)очень смешно :-) я обычный рабочий которому дали задание! базу я не состовлял и изменить мне ее не кто не разрешит! так что надо искать другой выход! я имела ввиду "виртуально" перевести с помощью запроса или расчетного свойства ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:44 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
krvsaАленочкая бы сделала расчетное св-во в классе Автору не нужно менять класс. SqlProc тоже подойдет, я предложила свои варианты вдруг эта дата автору кроме одного отчета еще где-нибудь понадобится исключительно пишу по собственному опыту, а так можно и через функции преобразования sql ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:46 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
Владимир :-) , пробуй это... Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:47 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
АленочкаSqlProc тоже подойдет А для этого класс менять не надо? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 08:47 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
krvsa Владимир :-) , пробуй это... Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
попробовал сделать так ругается что " поле indat не найдено в обрабатываемой таблице" ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 09:22 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
Владимир :-)это отдельные поля! точек в реальности нету! просто когда печатал они тут сами поставились!Исправил. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 09:39 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
servitВладимир :-)это отдельные поля! точек в реальности нету! просто когда печатал они тут сами поставились!Исправил. спасибо :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 09:42 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
Владимир :-)ругается что " поле indat не найдено в обрабатываемой таблице" Тогда готовь тестовый пример класса с его заполнением данными - бум тестить у себя... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 09:52 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
А если без indat попробовать? Код: sql 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 10:00 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
Владимир :-) , Исходные данныеClass demo.test Extends %Persistent { Property idfirm As %Integer [ SqlFieldName = "id-firm" ]; Property dd As %String; Property mm As %String; Property yyyy As %String; ClassMethod Test() { &sql(truncate table demo.test) &sql(insert into demo.test("id-firm",dd,mm,yyyy) values(701,'01','01',2010)) &sql(insert into demo.test("id-firm",dd,mm,yyyy) values(701,'17','03',2010)) &sql(insert into demo.test("id-firm",dd,mm,yyyy) values(805,'23','04',2011)) &sql(insert into demo.test("id-firm",dd,mm,yyyy) values(805,'01','01',2012)) &sql(insert into demo.test("id-firm",dd,mm,yyyy) values(805,'14','02',2012)) &sql(insert into demo.test("id-firm",dd,mm,yyyy) values(823,'12','09',2013)) } }Запросselect id, "id-firm", lpad(day(max(to_date(yyyy||mm||dd,'yyyymmdd'))+1),2,'0') dd, lpad(month(max(to_date(yyyy||mm||dd,'yyyymmdd'))+1),2,'0') mm, lpad(year(max(to_date(yyyy||mm||dd,'yyyymmdd'))+1),4,'0') yyyy from demo.test group by "id-firm"Результат:IDid-firmddmmyyyy170118032010380515022012682313092013 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 10:13 |
|
помогите с запросом
|
|||
---|---|---|---|
#18+
Мои 5 копеек... Класс Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
Заполнение Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
Запрос... Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2013, 10:18 |
|
|
start [/forum/moderation_log.php?user_name=Goolos777]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
162ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
65ms |
get tp. blocked users: |
2ms |
others: | 610ms |
total: | 907ms |
0 / 0 |