|
|
|
как связать 2 таблицы с отступом по времени
|
|||
|---|---|---|---|
|
#18+
Добрый день, существует 2 таблицы: -таблица операций -таблица аудита. в первой таблице перечень клиентов (id), дата операции и суммы во второй клиенты, время и оперцационные системы которые они использовали, но значений значительно больше, чем в первой, так как там учитывается и залогинивание клиента, переход по вкладкам и прочее. необходимо из второй таблицы подтянуть данные по операционным системам, но нюанс заключается в том, что около 20% операций в таблице аудита попадает с некоторой временным отклонением (выборочно посмотрели - не более 30секунд). подскажите как связать? пробовал как-то так, но не выдает ни одного результата(( select ccc.channel,bbb.* from bbb inner join ccc on ccc.user_id=bbb.id and ((to_date(ccc.timet,'dd.mm.yyyy.hh24.mi')-to_date(bbb.status_date,'dd.mm.yyyy.hh24.mi'))<'0.0007') ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2016, 10:53:22 |
|
||
|
как связать 2 таблицы с отступом по времени
|
|||
|---|---|---|---|
|
#18+
дата операций со временем. в таком формате - 04-MAR-15 12.25.54.554000 PM ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2016, 10:54:54 |
|
||
|
как связать 2 таблицы с отступом по времени
|
|||
|---|---|---|---|
|
#18+
ujin01, и как этот dd.mm.yyyy.hh24.mi формат соотвествует вашему ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2016, 11:40:46 |
|
||
|
как связать 2 таблицы с отступом по времени
|
|||
|---|---|---|---|
|
#18+
отсекаю до минут ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2016, 11:46:28 |
|
||
|
как связать 2 таблицы с отступом по времени
|
|||
|---|---|---|---|
|
#18+
ujin01, у кого вы отсекаете ? Код: plsql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2016, 11:49:49 |
|
||
|
как связать 2 таблицы с отступом по времени
|
|||
|---|---|---|---|
|
#18+
with ccc as (select to_char(v.timestamp,'dd.mm.yyyy.hh24.mi.ss') timet,v.user_id,v.channel from QULIX.V_VTB_AUDIT_EVENTS@QULIX v group by to_char(v.timestamp,'dd.mm.yyyy.hh24.mi.ss'),v.user_id,v.channel) select ccc.channel,bbb.* from bbb inner join ccc on ccc.user_id=bbb.id and ((to_date(ccc.timet,'dd.mm.yyyy.hh24.mi')-to_date(bbb.status_date,'dd.mm.yyyy.hh24.mi'))<'0.0007') ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2016, 12:44:09 |
|
||
|
как связать 2 таблицы с отступом по времени
|
|||
|---|---|---|---|
|
#18+
я сделала решение, теперь осталось выделить только уникальные записи в которых разница минимальна select ccc.channel,ccc.timet,bbb.* from bbb inner join ccc on ccc.user_id=bbb.id and ccc.timet<>to_char(bbb.status_date,'dd.mm.yyyy.hh24.mi') and (bbb.status_date+1/1440)>to_date(ccc.timet,'dd.mm.yyyy.hh24.mi.ss') and bbb.status_date <to_date(ccc.timet,'dd.mm.yyyy.hh24.mi.ss')) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2016, 12:46:11 |
|
||
|
как связать 2 таблицы с отступом по времени
|
|||
|---|---|---|---|
|
#18+
ujin01, ROW_NUMBER() over(partition by <уникальные записи> order by (дата1 - дата2)) только определись кто ты авторпробовал как-то так авторя сделала решение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2016, 13:42:04 |
|
||
|
как связать 2 таблицы с отступом по времени
|
|||
|---|---|---|---|
|
#18+
спасибо, попробую ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2016, 14:08:01 |
|
||
|
как связать 2 таблицы с отступом по времени
|
|||
|---|---|---|---|
|
#18+
я сделал решение после того как написал запрос здесь. но оно еще не финальное, но уже выделяет необходимую группу значений. как писал выше. осатлось выделить значение у которых разница дат минимальна, сейчас попробую ваш кусок использовать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2016, 14:09:36 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39306436&tid=1887493]: |
0ms |
get settings: |
10ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
182ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 252ms |
| total: | 534ms |

| 0 / 0 |
