首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Pandas中的Sql "where id not in (select id from A)“是可能的吗?

在Pandas中执行"where id not in (select id from A)"这样的SQL查询是不直接支持的。Pandas是一个开源的数据分析工具,它提供了许多灵活且高性能的数据结构和数据分析工具,但并不包含完整的关系型数据库功能。

要实现这样的查询,可以使用Pandas的一些数据处理方法来模拟。以下是一种可能的实现方法:

  1. 首先,将子查询的结果存储在一个Pandas的DataFrame中,假设为df_A。
代码语言:txt
复制
import pandas as pd

df_A = pd.DataFrame({'id': [1, 2, 3]})
  1. 然后,使用isin()方法找到不在df_A中的id值,并筛选出相应的数据。
代码语言:txt
复制
df = pd.DataFrame({'id': [1, 2, 3, 4, 5, 6]})

df_filtered = df[~df['id'].isin(df_A['id'])]

这将返回一个包含不在df_A中的id的DataFrame,即筛选出的结果。

值得注意的是,这个方法是基于Pandas内置的数据结构和方法来模拟SQL查询,对于大型数据集可能会存在性能问题。如果需要在真实的SQL数据库中执行这样的查询,可以考虑使用Pandas提供的SQLAlchemy库与数据库进行连接和交互。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

MyBatis源码 | 一条查询单条结果(`select * from t_user where id = ?`)SQL执行方法链追踪流程

环境:mybatis版本3.4.5 mysql数据库驱动版本:5.1.6 MyBatis源码: 一条查询单条结果(select * from t_user where id = ?)...SQL执行方法链追踪流程 sqlSession.getMapper得到mapper就是动态代理对象,MapperProxy类型: UserDao mapper = sqlSession.getMapper...,查看该执行流程方法调用链,里面涉及到设计模式有:动态代理、装饰者模式、责任链模式(XXXHandler类里面)、命令模式; 底层调用了JDBC执行代码,我们可以追踪到connection就是大家知道...prepare >org.apache.ibatis.executor.statement.PreparedStatementHandler#query >java.sql.PreparedStatement...#execute 该方法JDBC,可以执行任意SQL语句 >org.apache.ibatis.executor.resultset.DefaultResultSetHandler

50110
  • 「基础」SQL-Hiveselect from 解析

    今天我们来讲讲Hive中最常用 select from 语句知识要点。 Hive系列文章预计10-20篇,主要讲数据分析中最基础SQL技能。每周定期更新,欢迎关注公众号。...01-查询表内容 查询指定某一列或某几列,命令如下: SELECT 列名1,列名2,…… FROM 表名; 查询表所有字段时,可以使用*代表所有字段。星号(*)选取所有列快捷方式。...命令如下: SELECT * FROM 表名; 如果我们想查询表 t_od_use_cnt 所有的user_id和use_cnt,具体命令如下: SELECT user_id ,use_cnt...FROM app.t_od_use_cnt; 备注:app数据库名,如果当前查询表与当前使用数据库一致,可以省略不写 02-Hive严格模式 在Hive这样写虽然语法正确(不加分区),但在实际工作这样写很可能会报错...查询表t_od_use_cnt前5行数据,命令如下: SELECT user_id ,use_cnt FROM app.t_od_use_cnt WHERE date_8 = 20190101

    1.5K40

    SQL 查询Select 开始

    昨天我正在做窗口函数解释说明,并且我发现自己在谷歌上搜索“你能根据窗口函数结果进行过滤”。比如 — 你能在WHERE、HAVING或者其它地方过滤窗口函数结果?...在非图形格式,其顺序为: l FROM/JOIN 和所有的 ON 条件 l WHERE l GROUP BY l HAVING l SELECT(包括窗口函数) l ORDER BY l LIMIT...WHERE发生在GROUP BY之前!) 我可以根据窗口函数结果进行过滤(不行!...一个简单例子说明了为什么需要以不同顺序运行查询以使其快速运行,在这个查询SELECT * FROM owners LEFT JOIN cats ON owners.id = cats.owner...6、LINQ以FROM开始查询 LINQ(一种C#和VB.NET查询语法)使用顺序为FROMWHERESELECT

    1.7K20

    Studio 3T新功能:支持SQL SELECT DISTINCT,WHERE子句中JSON对象及更多

    Studio 3T2019年第一个版本侧重于对SQL Query改进,这是您最常用功能之一,此外还有其他用户请求UX优化: 添加了SELECT DISTINCT支持 使用JSON对象WHERE...子句中扩展SQL语法 能够在更改字段类型时保留值 更好入门功能建立在功能和新交互之上 SQL查询|支持SQL SELECT DISTINCT 我们已将SQL SELECT DISTINCT添加到支持...SQL语法(长)列表。...在SQL查询文档阅读有关SELECT DISTINCT及其技术限制更多信息。...SQL查询| WHERE子句中JSON对象 除了SELECT DISTINCT之外,您现在还可以通过两种方式在SQL WHERE子句中使用JSON对象: WHERE JSONor WHERE identifier

    3.4K20

    【干货原创】Pandas&SQL语法归纳总结,真的太全了

    对于数据分析师而言,PandasSQL可能大家用比较多两个工具,两者都可以对数据集进行深度分析,挖掘出有价值信息,但是二者语法有着诸多不同,今天小编就来总结归纳一下PandasSQL这两者之间在语法上到底有哪些不同...当中,我们用SELECT来查找数据,WHERE来过滤数据,DISTINCT来去重,LIMIT来限制输出结果数量, 输出数据集 ## SQL select * from airports ## Pandas...## SQL select id from airports where ident = 'KLAX' ## Pandas airports[airports.ident == 'KLAX'].id...== 'KLAX'] .sort_values('type') 又或者 ## SQL select * from airport_freq where airport_ident = 'KLAX'...'])] 又或者 ## SQL select * from airports where type not in ('heliport', 'balloonport') ## Pandas airports

    47930

    5个例子介绍Pandasmerge并对比SQLjoin

    本文重点在合并和连接操作方面比较PandasSQLPandas一个用于Python数据分析和操作库。SQL一种用于管理关系数据库数据编程语言。...两者都使用带标签行和列表格数据。 Pandasmerge函数根据公共列值组合dataframe。SQLjoin可以执行相同操作。...您可能已经注意到,id列并不完全相同。有些值只存在于一个dataframe。我们将在示例中看到处理它们方法。 示例1 第一个示例基于id共享值进行合并或连接。...另一方面,如果我们选择两个表所有列(“*”),则在SQL joinid重复。...在MySQL,完整外连接可以通过两个左连接实现: mysql> select cust.*, purc.* -> from cust left join purc -> on cust.id

    2K10

    ​14种方式,34个案例:对比SQL,学习Pandas操作

    SQL查询数据时候我们所有各种操作,主要是通过selectwhere、group by等多个关键词组合查询来实现。本文中介绍的如何在相同需求下,通过pandas来实现取数操作。...pandas来获取我们想要数据,也是pandas各种取数技巧,参考之前介绍3篇文章: 模拟数据 在数据库,我们先模拟了3份数据: 1、学生信息表 -- 学生信息 mysql> select *...:倒序输出最后5条 order by s_id; -- 再使用一次排序,将顺序还原 [008i3skNgy1gtq0mlvtyej60om0d80ux02.jpg] Pandas实现 tail方法默认后...= "男"; select * from user where age > 18; select * from user where id <= 3; [008i3skNgy1gtq0rzyb1zj61c40c642w02....jpg] 取反操作 SQL实现 mysql> select * from Student where s_sex !

    49320

    pymysql ︱mysql基本操作与dbutils+PooledDB使用

    ,form_name,将导入数据库表名 第四个参数your_database_name将导入数据库名字 if_exists='append’意思,如果表tablename存在,则将数据添加到这个表后面...("data.csv") conn.close() 2.8 SQL + pandas 来创建表结构 如果数据源本身来自数据库,通过脚本操作比较方便。...') 也可以在 to_sql() 方法,通过 dtype 参数指定字段类型,然后在 mysql 通过 alter table 命令将字段 EMP_ID 变成 primary key。...SQL代码如下: SELECT * FROM baike369 WHERE name REGEXP '[^a-w0-9]'; 查看name字段查询包含“a”到“w”字母和数字以外字符记录操作效果...SELECT * FROM baike369 WHERE name REGEXP '[ceo]'; name字段查询出包含数字记录。

    4.7K30

    PySpark︱DataFrame操作指南:增删改查合并统计与数据处理

    Row元素所有列名:** **选择一列或多列:select** **重载select方法:** **还可以用where按条件选择** --- 1.3 排序 --- --- 1.4 抽样 --- --...格式,所以可以作为两者格式转化 from pyspark.sql import Row row = Row("spe_id", "InOther") x = ['x1','x2'] y = ['y1'...**其中,monotonically_increasing_id()生成ID保证单调递增和唯一,但不是连续。...(pandas_df) 转化为pandas,但是该数据要读入内存,如果数据量大的话,很难跑得动 两者异同: Pyspark DataFrame在分布式节点上运行一些数据操作,而pandas可能...name, age FROM TBL1 WHERE age >= 13 AND age <= 19″) -------- 9、读写csv -------- 在Python,我们也可以使用SQLContext

    30.3K10

    最近面试太难了。

    当然这种题变形也很多,连续打卡天数、连续学习天数,连续点击天数等等都是同一个类型,今天我们将会给大家分享SQLPandas多种做法。让大家一次搞懂,下次面试不难!...) c; 注意:有时同一个用户最大连续日期可能存在多个,这里以第一个为准;如果需要获取全部最大日期可以使用rank或dense_rank窗口函数,可以保证天数一致时排名一致。...; 成功得到结果: sql变量(5.0也可以使用) 前面方法使用SQL 8.0窗口函数,但在低版本sql5.0并没有窗口函数,如果面试官提出不让用窗口函数,应该怎么办呢?...; 成功得到结果: Pandas 下面我们用sql窗口函数实现思路,用Pandas实现一遍。...我们看看Pandasrank函数几种method差异: import pandas as pd t1 = pd.DataFrame(data={'num': [2, 4, 4, 8, 8]})

    1.1K32
    领券