初级
查询患者完整就诊历史
未完成
初级参考
完整示例代码供参考,建议自己理解后重新输入
def solve():
from pyodide.http import open_url
patients_csv = open_url("https://data.zuihe.com/dbd/hospital/state_C01/patients.csv").read()
departments_csv = open_url("https://data.zuihe.com/dbd/hospital/state_C01/departments.csv").read()
doctors_csv = open_url("https://data.zuihe.com/dbd/hospital/state_C01/doctors.csv").read()
appointments_csv = open_url("https://data.zuihe.com/dbd/hospital/state_C01/appointments.csv").read()
diagnoses_csv = open_url("https://data.zuihe.com/dbd/hospital/state_C01/diagnoses.csv").read()
prescriptions_csv = open_url("https://data.zuihe.com/dbd/hospital/state_C01/prescriptions.csv").read()
import sqlite3
import pandas as pd
from io import StringIO
conn = sqlite3.connect(':memory:')
pd.read_csv(StringIO(appointments_csv)).to_sql('appointments', conn, index=False, if_exists='replace')
pd.read_csv(StringIO(doctors_csv)).to_sql('doctors', conn, index=False, if_exists='replace')
pd.read_csv(StringIO(departments_csv)).to_sql('departments', conn, index=False, if_exists='replace')
result = pd.read_sql_query("""
SELECT a.appt_date, d.name AS doctor_name, dept.name AS department_name,
a.time_slot, a.status
FROM appointments a
JOIN doctors d ON a.doctor_id = d.id
JOIN departments dept ON d.department_id = dept.id
WHERE a.patient_id = 3
ORDER BY a.appt_date
""", conn)
print(result.to_string(index=False))
conn.close()
示例
输入
solve()
期望输出
appt_date doctor_name department_name time_slot status 2025-04-08 王主任 外科 09:30-10:00 done 2025-04-16 吴医生 外科 09:00-09:30 done
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199