|
| 1 | +use role accountadmin; |
| 2 | +use schema {{database_name}}.synapse_raw; --noqa: JJ01,PRS,TMP |
| 3 | +alter task refresh_synapse_warehouse_s3_stage_task suspend; |
| 4 | +-- Alter certified quiz task |
| 5 | +alter task append_to_certifiedquizquestionsnapshots_task suspend; |
| 6 | +alter task upsert_to_certifiedquizquestion_latest_task suspend; |
| 7 | + |
| 8 | +alter task upsert_to_certifiedquizquestion_latest_task MODIFY AS |
| 9 | + MERGE INTO {{database_name}}.SYNAPSE.CERTIFIEDQUIZQUESTION_LATEST AS TARGET_TABLE --noqa: TMP |
| 10 | + USING ( |
| 11 | + WITH CQQ_RANKED AS ( |
| 12 | + SELECT |
| 13 | + *, |
| 14 | + ROW_NUMBER() OVER ( |
| 15 | + PARTITION BY RESPONSE_ID, QUESTION_INDEX |
| 16 | + ORDER BY IS_CORRECT DESC, INSTANCE DESC |
| 17 | + ) AS ROW_NUM |
| 18 | + FROM CERTIFIEDQUIZQUESTION_STREAM |
| 19 | + ) |
| 20 | + |
| 21 | + SELECT * EXCLUDE ROW_NUM |
| 22 | + FROM CQQ_RANKED |
| 23 | + WHERE ROW_NUM = 1 |
| 24 | + ORDER BY RESPONSE_ID DESC, QUESTION_INDEX ASC |
| 25 | + ) AS SOURCE_TABLE ON TARGET_TABLE.RESPONSE_ID = SOURCE_TABLE.RESPONSE_ID AND TARGET_TABLE.QUESTION_INDEX = SOURCE_TABLE.QUESTION_INDEX |
| 26 | + WHEN MATCHED THEN |
| 27 | + UPDATE SET |
| 28 | + TARGET_TABLE.CHANGE_TYPE = SOURCE_TABLE.CHANGE_TYPE, |
| 29 | + TARGET_TABLE.CHANGE_TIMESTAMP = SOURCE_TABLE.CHANGE_TIMESTAMP, |
| 30 | + TARGET_TABLE.CHANGE_USER_ID = SOURCE_TABLE.CHANGE_USER_ID, |
| 31 | + TARGET_TABLE.SNAPSHOT_TIMESTAMP = SOURCE_TABLE.SNAPSHOT_TIMESTAMP, |
| 32 | + TARGET_TABLE.RESPONSE_ID = SOURCE_TABLE.RESPONSE_ID, |
| 33 | + TARGET_TABLE.QUESTION_INDEX = SOURCE_TABLE.QUESTION_INDEX, |
| 34 | + TARGET_TABLE.IS_CORRECT = SOURCE_TABLE.IS_CORRECT, |
| 35 | + TARGET_TABLE.STACK = SOURCE_TABLE.STACK, |
| 36 | + TARGET_TABLE.INSTANCE = SOURCE_TABLE.INSTANCE, |
| 37 | + TARGET_TABLE.SNAPSHOT_DATE = SOURCE_TABLE.SNAPSHOT_DATE |
| 38 | + WHEN NOT MATCHED THEN |
| 39 | + INSERT (CHANGE_TYPE, CHANGE_TIMESTAMP, CHANGE_USER_ID, SNAPSHOT_TIMESTAMP, RESPONSE_ID, QUESTION_INDEX, IS_CORRECT, STACK, INSTANCE, SNAPSHOT_DATE) |
| 40 | + VALUES (SOURCE_TABLE.CHANGE_TYPE, SOURCE_TABLE.CHANGE_TIMESTAMP, SOURCE_TABLE.CHANGE_USER_ID, SOURCE_TABLE.SNAPSHOT_TIMESTAMP, SOURCE_TABLE.RESPONSE_ID, SOURCE_TABLE.QUESTION_INDEX, SOURCE_TABLE.IS_CORRECT, SOURCE_TABLE.STACK, SOURCE_TABLE.INSTANCE, SOURCE_TABLE.SNAPSHOT_DATE); |
| 41 | + |
| 42 | +alter task upsert_to_certifiedquizquestion_latest_task resume; |
| 43 | +alter task append_to_certifiedquizquestionsnapshots_task resume; |
| 44 | +alter task refresh_synapse_warehouse_s3_stage_task resume; |
0 commit comments