У меня запланированный запрос для обновления существующей таблицы BQ.BQ сообщает, что задание выполняется, и подтверждает время его завершения.
Однако строки фактически никогда не добавляются.
Никаких ошибок или каких-либо действий не происходит.
В таблице даже сказано, что он был последний раз изменен в то же время, когда выполняется запланированный запрос.
Тип записи - запись и добавление.
Кто-нибудь сталкивался с этой проблемой?Спасибо
select event_date,event_timestamp,user_id,event_name,value,
row_number() over (order by event_timestamp,event_date,event_name) as index
from
(
select *,row_number() over (order by event_timestamp,event_date,event_name) as id
from (select event_date,event_timestamp,
(select params.value.string_value from unnest(event_params) as params where params.key="user_id") as user_id,
case when event_name= "UAccountBalanceUpdated"
and params1.key="account_type" and params1.value.string_value="Gems"
and params2.key="product" and params2.value.string_value="GEM_PACK" then "GemsBought"
when event_name= "UAccountBalanceUpdated"
and params1.key="account_type" and params1.value.string_value="Gems"
and params2.key="product" and params2.value.string_value="Room ticket" then "RoomJoined"
-- when event_name= "UAccountBalanceUpdated"
-- and params1.key="account_type" and params1.value.string_value="winnings"
-- and params2.key="product" and params2.value.string_value="GAME_WINNINGS" then "RoomWon"
when event_name= "UAccountBalanceUpdated"
and params1.key="account_type" and params1.value.string_value="Gems"
and params2.key="product" and params2.value.string_value="ROOM_CANCEL_REFUND" then "RoomCancelledRefund"
when event_name= "UAccountBalanceUpdated"
and params1.key="account_type" and params1.value.string_value="Gems"
and params2.key="category" and params2.value.string_value="Bonus" then "WelcomeGemsOffered"
when event_name= "UPaymentTransactionUpdate"
and params1.key="reason" and params1.value.string_value="Purchase"
and params2.key="status" and params2.value.string_value="Success" then "Cashin"
when event_name= "UPaymentTransactionUpdate"
and params1.key="reason" and params1.value.string_value="Withdrawal"
and params2.key="status" and params2.value.string_value="Success" then "Cashout"
when event_name= "URoomRegistered"
and params1.key="entry_fee_currency" and params1.value.string_value="Gem"
and params2.key="is_success" and params2.value.int_value=1 then "RoomJoined"
when event_name= "UWon"
and params1.key="entry_fee_currency" and params1.value.string_value="GEM"
and params2.key="rank" and params2.value.int_value>-1
then "RoomWon"
when event_name= "ULoggedIn"
and params1.key="event_source" and params1.value.string_value="Server"
and params2.key="is_new_user" and params2.value.int_value>-1
then "Loggedin"
when event_name= "RoomConcluded"
and params1.key="rewards_config_name" and params1.value.string_value="REFUND"
and params2.key="entry_fee_currency" and params2.value.string_value="GEM" then "RoomCancelled"
when event_name= "RoomConcluded"
and params1.key="rewards_config_name" and params1.value.string_value<>"REFUND"
and params2.key="entry_fee_currency" and params2.value.string_value="GEM" then "RoomConcluded"
when event_name= "UPlayedGame"
and params1.key="entry_fee_currency" and params1.value.string_value="GEM"
and params2.key="prize_currency" and params2.value.string_value="INR"
then "UserPlayerGame"
else Null end as event_name,
case
when event_name= "UAccountBalanceUpdated"
and params1.key="account_type" and params1.value.string_value="Gems"
and params2.key="product" and params2.value.string_value="GEM_PACK"
then (select params.value.float_value from unnest(event_params) as params where params.key="amount")
when event_name= "UAccountBalanceUpdated"
and params1.key="account_type" and params1.value.string_value="Gems"
and params2.key="product" and params2.value.string_value="Room ticket" then
(select params.value.float_value from unnest(event_params) as params where params.key="amount")
-- when event_name= "UAccountBalanceUpdated"
-- and params1.key="account_type" and params1.value.string_value="winnings"
-- and params2.key="product" and params2.value.string_value="GAME_WINNINGS" then
-- (select params.value.float_value from unnest(event_params) as params where params.key="amount")
when event_name= "UAccountBalanceUpdated"
and params1.key="account_type" and params1.value.string_value="Gems"
and params2.key="product" and params2.value.string_value="ROOM_CANCEL_REFUND" then
(select params.value.float_value from unnest(event_params) as params where params.key="amount")
when event_name= "UAccountBalanceUpdated"
and params1.key="account_type" and params1.value.string_value="Gems"
and params2.key="category" and params2.value.string_value="Bonus" then
(select params.value.float_value from unnest(event_params) as params where params.key="amount")
when event_name= "UPaymentTransactionUpdate"
and params1.key="reason" and params1.value.string_value="Purchase"
and params2.key="status" and params2.value.string_value="Success" then
(select params.value.float_value from unnest(event_params) as params where params.key="amount")
when event_name= "UPaymentTransactionUpdate"
and params1.key="reason" and params1.value.string_value="Withdrawal"
and params2.key="status" and params2.value.string_value="Success" then
(select params.value.float_value from unnest(event_params) as params where params.key="amount")
when event_name= "URoomRegistered"
and params1.key="entry_fee_currency" and params2.value.string_value="Gem"
and params2.key="is_success" and params2.value.int_value=1
then
(select params.value.float_value from unnest(event_params) as params where params.key="entry_fee")
when event_name= "UWon"
and params1.key="entry_fee_currency" and params1.value.string_value="GEM"
and params2.key="rank" and params2.value.int_value>-1
then
(select params.value.float_value from unnest(event_params) as params where params.key="prize_amount")
when event_name= "ULoggedIn"
and params1.key="event_source" and params1.value.string_value="Server"
and params2.key="is_new_user" and params2.value.int_value>-1
then
(select params.value.int_value from unnest(event_params) as params where params.key="is_new_user")
when event_name= "RoomConcluded"
and params1.key="rewards_config_name" and params1.value.string_value="REFUND"
and params2.key="entry_fee_currency" and params2.value.string_value="GEM" then
(select params.value.float_value from unnest(event_params) as params where params.key="min_players")
when event_name= "RoomConcluded"
and params1.key="rewards_config_name" and params1.value.string_value<>"REFUND"
and params2.key="entry_fee_currency" and params2.value.string_value="GEM" then
(select params.value.int_value from unnest(event_params) as params where params.key="players_count")
when event_name= "UPlayedGame"
and params1.key="entry_fee_currency" and params1.value.string_value="GEM"
and params2.key="prize_currency" and params2.value.string_value="INR"
then (select params.value.int_value from unnest(event_params) as params where params.key="game_score")
else Null end as value
FROM `analytics_193614062.server_events` ,
UNNEST(event_params) as params1,
UNNEST(event_params) as params2) where event_name is not null
and PARSE_DATE('%Y%m%d', event_date)= DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY)
UNION ALL
select *,row_number() over (order by event_timestamp,event_date,event_name) as id
from (select event_date,event_timestamp, user_id,
case
when event_name= "user_engagement"
and params.key="firebase_event_origin" and params.value.string_value="auto"
then "user_engagement"
when event_name= "RankFetched"
and params.key="is_success" and params.value.int_value=1
then "RankFetched"
when event_name= "BuyGemsInitiated"
and params.key="gems_entry_type" and params.value.string_value="GEM_PACK"
then "BuyGemsInitiated"
when event_name= "app_remove"
and params.key="firebase_event_origin" and params.value.string_value="auto"
then "app_remove"
when event_name= "first_open"
and params.key="firebase_event_origin" and params.value.string_value="auto"
then "first_open"
when event_name= "FTUECompleted"
and params.key="event_source" and params.value.string_value="Client"
then "FTUECompleted"
else Null end as event_name,
case
when event_name= "user_engagement"
and params.key="firebase_event_origin" and params.value.string_value="auto"
then (select params.value.int_value from unnest(event_params) as params where params.key="engagement_time_msec")
when event_name= "RankFetched"
and params.key="is_success" and params.value.int_value=1
then (select params.value.int_value from unnest(event_params) as params where params.key="current_score")
when event_name= "BuyGemsInitiated"
and params.key="gems_entry_type" and params.value.string_value="GEM_PACK"
then (select params.value.int_value from unnest(event_params) as params where params.key="gem_balance")
when event_name= "app_remove"
and params.key="firebase_event_origin" and params.value.string_value="auto"
then (select params.value.int_value from unnest(event_params) as params where params.key="ga_session_number")
when event_name= "first_open"
and params.key="firebase_event_origin" and params.value.string_value="auto"
then (select params.value.int_value from unnest(event_params) as params where params.key="previous_first_open_count")
when event_name= "FTUECompleted"
and params.key="event_source" and params.value.string_value="Client"
then (select params.value.int_value from unnest(event_params) as params where params.key="score")
else Null end as value
FROM `analytics_193614062.events_*` ,
UNNEST(event_params) as params
where _TABLE_SUFFIX =FORMAT_DATE("%Y%m%d", DATE_SUB(CURRENT_DATE(), INTERVAL 1 DAY))
)
where event_name is not null
) order by event_date