Jupyter Notebook: SQL Wildcards in SQL_Magi

2024-04-24 13:35:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个连接到PostgreSQL数据库的Jupyter笔记本。我想使用通配符查找(其中col_a like'%substr%')来检索一些数据,但它在使用sql魔法的单元格中不起作用。在

我可以很好地执行查询,只要它们没有通配符%搜索。在

配置单元(匹配您的配置)

from sqlalchemy import create_engine
connection_string = '...your db...'
pg_engine = create_engine(connection_string)

sql\U魔法单元

^{2}$

SQL单元格:

%%read_sql
SELECT *
FROM (
    select '100' as col_a
) as a
WHERE col_a LIKE '%0%'; -- returns empty, but should have 1 record

“SQL Cell”中的查询返回在pgAdmin中运行的1行,但返回在笔记本中运行的EmptyResult。在

Out: <sql_magic.exceptions.EmptyResult at 0x7f5cdeefb240>

问题似乎出在LIKE语句中,因为它读取数据时没有WHERE子句。我试着用这样的方法来转义%

WHERE col_a LIKE '\%0\%';

但结果还是空的


Tags: sqlstringascreate魔法笔记本colconnection
1条回答
网友
1楼 · 发布于 2024-04-24 13:35:55

结果发现重复%是一个转义,所以这段代码可以工作:

%%read_sql
SELECT *
FROM (
    select '100' as col_a
) as a
WHERE col_a LIKE '%%0%%';

相关问题 更多 >