НачатьНачать бесплатно

Дополнительная практика с объединениями

Вы можете использовать тот же оператор SELECT, что и в предыдущем упражнении. Однако на этот раз добавим усложнение: вернём лишь несколько столбцов и используем другую таблицу в конструкции group_by().

Это упражнение является частью курса

Введение в базы данных на Python

Посмотреть курс

Инструкции к упражнению

  • Составьте запрос для выборки следующих данных:
    • Столбец state из таблицы census.
    • Сумму значений столбца pop2008 из таблицы census.
    • Столбец census_division_name из таблицы state_fact.
  • Добавьте к stmt вызов .select_from(), чтобы объединить таблицы census и state_fact по столбцам state и name.
  • Сгруппируйте результат по столбцу name таблицы state_fact.
  • Выполните запрос stmt_grouped, чтобы получить все записи, и сохраните результат в переменную results.
  • Нажмите Отправить ответ, чтобы запустить цикл по объекту results и вывести каждую запись.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Build a statement to select the state, sum of 2008 population and census
# division name: stmt
stmt = select([
    ____,
    func.sum(____),
    ____
])

# Append select_from to join the census and state_fact tables by the census state and state_fact name columns
stmt_joined = stmt.select_from(
    census.join(____, census.columns.____ == state_fact.columns.____)
)

# Append a group by for the state_fact name column
stmt_grouped = stmt_joined.group_by(____)

# Execute the statement and get the results: results
results = connection.execute(____).fetchall()

# Loop over the results object and print each record.
for record in results:
    print(record)
Редактировать и запускать код