SQL - SQLite - Python - 高度なSELECT文 - 新たな目でデータを見る - ORDER BY
Head First SQL ―頭とからだで覚えるSQLの基本、 Lynn Beighley(著)、 佐藤 直生(監訳)、 松永 多苗子(翻訳)、 オライリージャパンの 6章(高度なSELECT文 - 新たな目でデータを見る)、p.251(自分で考えてみよう)の解答を求めてみる。
schema5.sql
select title, category
from movie_table
where category = 'ファミリー'
order by title;
コード
sample5.py
#! /usr/bin/env python3
import sqlite3
con = sqlite3.connect('sample.db')
cur = con.cursor()
with open(f'schema5.sql') as f:
cur.execute(f.read())
if (d := cur.description) is not None:
print([t[0] for t in d])
for row in cur.fetchall():
print(row)
cur.close()
con.close()
入出力結果(Terminal, Zsh)
% ./sample5.py
['title', 'category']
('アクティング・アップ', 'ファミリー')
('アクティング・アップ', 'ファミリー')
('アクティング・アップ', 'ファミリー')
('アクティング・アップ', 'ファミリー')
('アフター・ザクラウン・リーブス', 'ファミリー')
('アフター・ザクラウン・リーブス', 'ファミリー')
('アフター・ザクラウン・リーブス', 'ファミリー')
('アフター・ザクラウン・リーブス', 'ファミリー')
('アンディのため息', 'ファミリー')
('アンディのため息', 'ファミリー')
('アンディのため息', 'ファミリー')
('アンディのため息', 'ファミリー')
('アー・ユー・ペイイング・アテンション', 'ファミリー')
('アー・ユー・ペイイング・アテンション', 'ファミリー')
('アー・ユー・ペイイング・アテンション', 'ファミリー')
('アー・ユー・ペイイング・アテンション', 'ファミリー')
('アー・ユー・マイ・マザー?', 'ファミリー')
('アー・ユー・マイ・マザー?', 'ファミリー')
('アー・ユー・マイ・マザー?', 'ファミリー')
('アー・ユー・マイ・マザー?', 'ファミリー')
%