0
私はウィンドウ上でverticaとmin()ウィンドウ関数を使用しています。しかし、関数はいくつかのウィンドウでうまく動作するようですが、いくつかのウィンドウでは、同じウィンドウ内で異なるmin値を返しています。私は、これはいくつかのウィンドウのために正常に動作し、リターンがしかしmin()ウィンドウ関数が正常に動作しない - 同じウィンドウに対して異なる値を返す
visid_high visid_low visit_num date_time visit_page_num min_hotelinfo
1000025785676989783 3541599610445607061 1 6/19/2016 8:54 2 2
1000025785676989783 3541599610445607061 1 6/19/2016 8:55 4 2
1000025785676989783 3541599610445607061 1 6/19/2016 8:55 5 2
visid_high visid_low visit_num date_time visit_page_num min_hotelinfo
1000334043872452151 13928857828543794490 1 6/19/2016 14:56 2 2
1000334043872452151 13928857828543794490 1 6/19/2016 14:57 6 2
1000334043872452151 13928857828543794490 1 6/19/2016 14:57 7 2
1000334043872452151 13928857828543794490 2 6/19/2016 16:09 2 2
10006241273945967252 17961652664059791311 1 6/19/2016 20:09 2 2
10006241273945967252 17961652664059791311 1 6/19/2016 20:09 4 2
10006241273945967252 17961652664059791311 1 6/19/2016 20:10 8 2
以下のようになり
select visid_high, visid_low, visit_num, date_time, visit_page_num,
min(visit_page_num) over (partition by visid_high , visid_low , visit_num order by date_time) as min_hotelinfo
from prd_omniture_hit_data_all where pagename='Hotel Info - Home' and date(Date_time)='2016-06-19' order by visid_high, visid_low, visit_num, date_time
を見下ろす午前何がある、いくつかのウィンドウのために、それが適切に機能していない
visid_high visid_low visit_num date_time visit_page_num min_hotelinfo
10007599756616641840 269931436307846555 2 6/19/2016 19:51 2 2
10007599756616641840 269931436307846555 2 6/19/2016 19:52 3 2
10007599756616641840 269931436307846555 2 6/19/2016 19:52 5 2
10007599756616641840 269931436307846555 2 6/19/2016 19:53 7 2
10007599756616641840 269931436307846555 2 6/19/2016 19:53 9 2
10007599756616641840 269931436307846555 2 6/19/2016 19:53 10 **10**
10009683770139214971 14890994612952617462 2 6/19/2016 8:03 5 5
10009683770139214971 14890994612952617462 2 6/19/2016 8:03 7 **5**
10009683770139214971 14890994612952617462 2 6/19/2016 8:09 26 **26**
10009683770139214971 14890994612952617462 2 6/19/2016 8:12 28 26
10009683770139214971 14890994612952617462 2 6/19/2016 8:13 30 26
10009683770139214971 14890994612952617462 2 6/19/2016 8:14 32 26
10009683770139214971 14890994612952617462 2 6/19/2016 8:15 36 26
10009683770139214971 14890994612952617462 2 6/19/2016 8:17 40 26
visid_high visid_low visit_num date_time visit_page_num min_hotelinfo
10012413883034897266 8201606845758098188 1 6/19/2016 7:22 4 4
10012413883034897266 8201606845758098188 1 6/19/2016 7:24 5 4
10012413883034897266 8201606845758098188 1 6/19/2016 7:24 8 4
10012413883034897266 8201606845758098188 1 6/19/2016 7:24 7 4
10012413883034897266 8201606845758098188 1 6/19/2016 7:24 6 **4**
10012413883034897266 8201606845758098188 1 6/19/2016 8:04 16 **16**
10012413883034897266 8201606845758098188 1 6/19/2016 8:06 20 16
10012413883034897266 8201606845758098188 1 6/19/2016 8:06 25 16
10012413883034897266 8201606845758098188 1 6/19/2016 8:07 28 16
10012413883034897266 8201606845758098188 1 6/19/2016 8:07 30 16
正確なバージョンのVerticaを実行していますか? 'select version();' – woot
@ woot Vertica Analytic Database v7.2.3-0 – Teja
なぜウィンドウ定義の 'order by'ですか?私はなぜあなたが最小を得るために「注文する」必要があるのか分からない。通常、ウィンドウ関数として使用される集合体の 'order by 'は、それを「実行中の集合体」に変換します。 'order by'を削除したときに動作すると期待されるように動作しますか? –