Запрос Google Biq и SQL

Я привык работать с базами данных SQL Server, и теперь мне нужно запрашивать данные из BigQuery.

Как лучше всего запрашивать данные из таблицы?

Если один столбец включает в себя несколько столбцов...

В чем именно заключается ваш вопрос? Пожалуйста, приведите фактический пример выборочных данных и желаемых результатов в виде табличного текста.

GMB 14.12.2020 11:33

Привет, мне нужна обычная таблица со столбцами USER ID, AGE, Gender.....

Galat 14.12.2020 11:48
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
1
2
52
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Обычно подзапросы используются так:

SELECT
  user_id,
  user_pseudo_id,
  (SELECT value.string_value FROM user_properties WHERE key = "age") AS age,
  (SELECT value.string_value FROM user_properties WHERE key = "gender") AS gender,
FROM dataset.table
Ответ принят как подходящий

BigQuery поддерживает unnest() для превращения элементов массива в строки. Итак, вы можете преобразовать все это в строки как:

select t.user_id, t.user_pseudo_id, up.*
from t cross join
     unnest(user_properties) up;

Вам нужно поле для каждого свойства. Есть несколько способов сделать это. Если вам нужно ровно одно значение в строке, вы можете использовать подзапрос и агрегацию:

select t.user_id, t.user_pseudo_id, p.*
from t cross join
     (select max(case when up.key = 'age' then up.string_value end) as age,
             max(case when up.key = 'gender' then up.string_value end) as gender
      from unnest(user_properties) up
     ) p

Другие вопросы по теме