Mysql 如何在sql/plsql中根据列选择不同的行值
考虑下表:Mysql 如何在sql/plsql中根据列选择不同的行值,mysql,sql,Mysql,Sql,考虑下表: name mark1 mark2 mark3 x 1 2 2 y 2 2 2 z 1 2 3 这里,我需要选择非独立的,例如,考虑行三,其中在列2中只包含一个“2”。为此,如何编写SQL代码?我已经习惯了使用count和distinct命令,但无法获得它。这样试试 选择* 来自表1 其中mark1 mark2 和mark1 mark3 标记2和标记3; 输出: | NAME | MARK1 | MAR
name mark1 mark2 mark3
x 1 2 2
y 2 2 2
z 1 2 3
这里,我需要选择非独立的,例如,考虑行三,其中在列2中只包含一个“2”。为此,如何编写SQL代码?我已经习惯了使用count和distinct命令,但无法获得它。
这样试试选择*
来自表1
其中mark1 mark2
和mark1 mark3
标记2和标记3;
输出:
| NAME | MARK1 | MARK2 | MARK3 |
|------|-------|-------|-------|
| z | 1 | 2 | 3 |
|名称|标记1 |标记2 |标记3|
|------|-------|-------|-------|
|z | 1 | 2 | 3|
如果您需要选择所有包含不相等值的列,请参见演示 就像这个例子中的第3行
SELECT *
FROM table a
WHERE a.m1<>a.m2
AND a.m2<>a.m3
AND a.m1<>a.m3
选择*
从表a
其中a.m1a.m2
和a.m2a.m3
和a.m1a.m3
如果我足够理解你的问题,我会这样说:
从标记位置选择*(标记1Mark2、标记1Mark3和标记2Mark3) 请描述您实际想要的是什么?请更清楚地说明…count(distinct)是有效的表达式,它有帮助吗?你的问题需要更多的帮助吗?