Oracle中基于多列过滤记录的正确条件咨询
过滤条件方案
根据需求,我们需要排除仅当account为'N/A'且amount为0的记录,保留其他所有记录。以下是不同工具下的具体实现:
SQL 环境
使用WHERE子句排除目标记录,两种等价写法:
写法一(逻辑取反)
SELECT * FROM your_table_name WHERE NOT (account = 'N/A' AND amount = 0);
写法二(逻辑或)
SELECT * FROM your_table_name WHERE account != 'N/A' OR amount != 0;
Pandas(Python)
对DataFrame进行过滤:
写法一(取反逻辑)
import pandas as pd # 假设df是你的数据框 df_filtered = df[~((df['account'] == 'N/A') & (df['amount'] == 0))]
写法二(逻辑或)
df_filtered = df[(df['account'] != 'N/A') | (df['amount'] != 0)]
Excel
可以通过辅助列实现筛选:
- 在空白列(比如D列)的第一行(D2)输入公式:
=NOT(AND(B2="N/A", C2=0))
- 下拉填充公式到所有行
- 筛选D列值为
TRUE的行,即可得到目标结果
内容的提问来源于stack exchange,提问作者Pranali
相关产品推荐
相关产品推荐

