您知道如何从字段1中获取在字段2中不包含0值的值吗? 例如,我只想从下表中 Select "bbb"和"ddd":

Field 1 Field 2
AAA 1
AAA 2
AAA 0
BBB 1
BBB 2
CCC 0
CCC 2
DDD 3

(BBB和DDD在字段2中不包含零值)

推荐答案

我可以想到两种方法来实现这一点:

Using Subquery:

SELECT DISTINCT Field1
FROM your_table
WHERE Field1 NOT IN (
    SELECT Field1
    FROM your_table
    WHERE Field2 = 0
);

Using group by and having

SELECT Field1
FROM your_table
GROUP BY Field1
HAVING SUM(CASE WHEN Field2 = 0 THEN 1 ELSE 0 END) = 0;

100

Mysql相关问答推荐

是否有一种方法可以在mysql中设置一列,使其自动成为该行的行号的值?

MySQL 8.0.28覆盖(和函数)索引未使用

SQL中的搜索模式

SQL不断返回查询失败,并且不知道从这里到哪里go

默认情况下,MariaDB是否限制为本地主机?

在时间戳上搜索大的MySQL表很慢

亚马逊RDS MySQL-无法';t执行';使用读取锁定刷新表';

根据现有行 Select 月份日期

Select 构成每天聚合 MAX 的各个行

将时间戳四舍五入到最接近的半小时而不遗漏丢失的数据

估计对大表进行分区所需的时间

Mysql JSON_REMOVE 数组键和值 (MariaDB)

MySQL 将分组 JSON Select 转换为单个 JSON 对象

MySQL如何在小时和分钟之间 Select 时间

提高mysql导入速度

主键应该始终是无符号的?

MySQL触发器在某些条件下防止INSERT

在mysql中复制没有数据的数据库 struct (带有空表)

MySQL 导出到 outfile:CSV 转义字符

将sql查询的结果写入mysql中的文件