使用快捷键“CTRL+ALT+T” 打开终端
init_woody
#-------------------------------------------------
%sql select database()
#-------------------------------------------------
%sql use dadmrdal34
$----------------------------------------------------
%sql show tables
#----------------------------------------------------
# 加载 ipython-sql 扩展
%load_ext sql
#--------------------------------------------------------
# 定义 SQL 查询语句
query = "SELECT * FROM dadmrdal34.P_34TPUP_UCAP_TERM_JRN_INFOA LIMIT 5"
# 执行查询
result = %sql $query
# 处理查询结果
if result:
print("查询到的前 5 条数据如下:")
for row in result:
print(row)
else:
print("未查询到数据。")
init_woody
- 功能推测:
init_woody
并非标准的 Python 或者 SQL 语句。从上下文来看,它极有可能是一个自定义的函数、脚本或者宏。一般而言,这种自定义的初始化操作会在使用数据库之前执行,其作用或许是对数据库连接的相关环境进行初始化,比如设置数据库连接的参数、加载必要的库或者配置文件等。 - 示例用途:假设
init_woody
是一个 Python 函数,它可能会设置数据库连接的环境变量,代码示例如下:
def init_woody():
import os
os.environ['DB_USER'] = 'your_username'
os.environ['DB_PASSWORD'] = 'your_password'
os.environ['DB_HOST'] = 'your_host'
os.environ['DB_PORT'] = 'your_port'
init_woody()
%sql select database()
%sql
魔法命令:这是ipython - sql
扩展所提供的魔法命令,借助它能够在 Jupyter Notebook 的 Python 代码单元格里直接执行 SQL 语句。select database()
:这是一条标准的 SQL 语句,其功能是返回当前所使用的数据库名称。在执行此语句之后,会显示当前连接的数据库名称。
%sql use dadmrdal34
%sql
魔法命令:同样是ipython - sql
扩展的魔法命令,用于执行 SQL 语句。use dadmrdal34
:这是一条 SQL 语句,其作用是切换当前使用的数据库为dadmrdal34
。在执行该语句之后,后续的 SQL 操作就会在dadmrdal34
这个数据库里进行。
%sql show tables
%sql
魔法命令:依旧是ipython - sql
扩展的魔法命令,用于执行 SQL 语句。show tables
:这是一条 SQL 语句,其功能是显示当前数据库里的所有表名。在执行此语句之后,会列出dadmrdal34
数据库中的所有表名。
总结
这一系列代码的主要目的是先进行数据库连接的初始化操作,接着查看当前使用的数据库名称,然后切换到 dadmrdal34
数据库,最后查看该数据库中的所有表名。
基于 ipython - sql
扩展结合 pandas
库,实现从 dadmrdal34.P_34TPUP_UCAP_TERM_JRN_INFOA
表中筛选出 TIME_START_TR
字段时间部分早于下午 2 点(即 14:00:00
)且 COD_TR_BOEC_CLI
为 61606
的数量小于 1 的数据的代码,同时会以表格形式可视化展示结果。
# 定义 SQL 查询语句
sql_query = """
WITH filtered_data AS (
SELECT *
FROM P_34TPUP_UCAP_TERM_JRN_INFOA
WHERE SUBSTR(TIME_START_TR, 12, 8) < '14:00:00'
AND COD_TR_BOEC_CLI = 61606
)
SELECT *
FROM filtered_data
WHERE (SELECT COUNT(*) FROM filtered_data) < 1;
"""
# 执行 SQL 查询
result = %sql $sql_query
# 导入 pandas 库
import pandas as pd
# 将查询结果转换为 pandas DataFrame
df = result.DataFrame()
# 显示 DataFrame
if not df.empty:
print("查询到的符合条件的数据如下:")
display(df)
else:
print("未查询到符合条件的数据。")