datasets as()

in api/v1/src/datasets/dataManager.js [205:245]


    datasets as (
      SELECT cp.rowId, d.datasetId, d.tables
      FROM \`datashare.currentPolicy\` cp
      CROSS JOIN cp.datasets d
      JOIN datasetRows dr on cp.rowId = dr.rowId
    ),
    availableDatasets as (
      SELECT schema_name as datasetId
      FROM INFORMATION_SCHEMA.SCHEMATA
    ),
    policyDatasets as (
      SELECT d.rowId, ARRAY_AGG(STRUCT(d.datasetId, d.tables)) as datasets
      FROM datasets d
      JOIN availableDatasets a on a.datasetId = d.datasetId
      GROUP BY d.rowId
    )
    select
      GENERATE_UUID() as rowId,
      policyId,
      name,
      description,
      isTableBased,
      pd.datasets,
      rowAccessTags,
      @createdBy,
      CURRENT_TIMESTAMP() as createdAt,
      isDeleted,
      cp.bigQueryEnabled,
      cp.pubsubEnabled,
      cp.storageEnabled,
      cp.buckets,
      cp.topics
    FROM datasetRows dr
    JOIN \`datashare.currentPolicy\` cp on dr.rowId = cp.rowId
    LEFT JOIN policyDatasets pd on cp.rowId = pd.rowId;`;

        // console.log(`Executing policy update: ${policyStatement}`);
        const policyOptions = {
            query: policyStatement,
            params: { createdBy: createdBy, datasetId: datasetId }
        };