Skip to content

Commit d13594b

Browse files
author
Steven Chen
committed
select query
1 parent dcb5a7a commit d13594b

5 files changed

Lines changed: 55 additions & 0 deletions

File tree

03_select/__init__.py

Whitespace-only changes.

03_select/db_init.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import sqlalchemy
2+
3+
engine = sqlalchemy.create_engine('mysql://root:test@localhost/testdb', echo=True)
4+
5+
meta_data = sqlalchemy.MetaData()
6+
7+
person_table = sqlalchemy.Table(
8+
"person", meta_data,
9+
sqlalchemy.Column("id", sqlalchemy.Integer, primary_key=True),
10+
sqlalchemy.Column("name", sqlalchemy.String(128), unique=True, nullable=False),
11+
sqlalchemy.Column("birthday", sqlalchemy.Date, nullable=False),
12+
)
13+
14+
meta_data.create_all(engine)

03_select/select_all.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
from db_init import engine, person_table
2+
3+
with engine.connect() as conn:
4+
query = person_table.select()
5+
result_set = conn.execute(query)
6+
7+
# for row in result_set:
8+
# print(row[0])
9+
# print(row.name)
10+
11+
# result = result_set.fetchall()
12+
# print(result)
13+
14+
row = result_set.fetchone()
15+
print(row)

03_select/select_by_birthday.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
from db_init import engine, person_table
2+
3+
with engine.connect() as conn:
4+
query = person_table.select().where(person_table.c.birthday > '2000-10-13')
5+
result_set = conn.execute(query)
6+
7+
result = result_set.fetchall()
8+
print(result)

03_select/select_by_multiple.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
from db_init import engine, person_table
2+
from sqlalchemy.sql import and_, or_
3+
4+
with engine.connect() as conn:
5+
# query = person_table.select().where(person_table.c.birthday > '2000-10-13').where(person_table.c.id < 6)
6+
query = person_table.select().where(
7+
or_(
8+
person_table.c.name == 'Tom',
9+
and_(
10+
person_table.c.birthday > '2000-10-13',
11+
person_table.c.id < 7
12+
)
13+
)
14+
)
15+
result_set = conn.execute(query)
16+
17+
result = result_set.fetchall()
18+
print(result)

0 commit comments

Comments
 (0)