Créer un jeu de données
Query Service fournit la fonctionnalité Create Table As Select (CTAS
) pour créer un tableau en fonction du résultat d’une instruction SELECT
, ou comme dans ce cas, en utilisant une référence à un schéma XDM existant dans Adobe Experience Platform. Le schéma XDM affiché ci-dessous est pour l’Final_subscription
créé pour cet exemple.
L’exemple suivant illustre le langage SQL utilisé pour créer le jeu de données final_subscription_test2
. final_subscription_test2
est créé en utilisant le schéma Final_subscription
. Les données sont extraites de la source à l’aide d’une clause SELECT
pour renseigner certaines lignes.
CREATE TABLE final_subscription_test2 with(schema='Final_subscription') AS (
SELECT struct(userid, collect_set(subscription) AS subscription) AS _lumaservices3 FROM(
SELECT user AS userid,
struct( last(eventtime) AS last_eventtime,
last(status) AS last_status,
offer_id,
subsid AS subscription_id)
AS subscription
FROM (
SELECT _lumaservices3.msftidentities.userid user
, _lumaservices3.subscription.subscription_id subsid
, _lumaservices3.subscription.subscription_status status
, _lumaservices3.subscription.offer_id offer_id
, TIMESTAMP eventtime
FROM
xbox_subscription_event
UNION
SELECT _lumaservices3.msftidentities.userid user
, _lumaservices3.subscription.subscription_id subsid
, _lumaservices3.subscription.subscription_status status
, _lumaservices3.subscription.offer_id offer_id
, TIMESTAMP eventtime
FROM
office365_subscription_event
)
GROUP BY user,subsid,offer_id
ORDER BY user ASC
) GROUP BY userid)
Dans le jeu de données initial final_subscription_test2
, le type de données struct est utilisé pour contenir à la fois le champ subscription
et l’userid
qui est propre à chaque personne. Le champ subscription
décrit les abonnements aux produits pour une personne. Il peut y avoir plusieurs abonnements, mais un tableau ne peut contenir que les informations d’un abonnement par ligne.