我有这样的table结构。。 ext_no
, value
.. 我想在条件下选择不同的记录..比如 ext_no
不止两个,如果且仅当所有这些
ext_no value
是零。。我想要下面给出的预期结果…比如。。如何写mysql查询这个。。?任何帮助都将不胜感激。。提前谢谢。。
表结构:
CREATE TABLE `test` (
`ext_no` int(5) default NULL,
`value` int(3) default NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--
-- Dumping data for table `test`
--
INSERT INTO `test` (`ext_no`, `value`) VALUES
(12133, 0),
(12133, 0),
(12133, 0),
(22222, 0),
(44226, 0),
(44226, 0),
(44226, 1),
(44226, 2),
(99902, 1),
(99902, 2),
(99902, 3),
(11505, 0),
(11505, 0),
(11505, 0),
(11505, 0);
预期结果:
ext_no value
12133 0
11505 0
编辑:我试过了-
select distinct ext_no, value from test where value ='0' order by ext_no DESC;
3条答案
按热度按时间pgvzfuti1#
试试这个
u7up0aaq2#
count
跳过null
价值观。所以你可以count
一case
值所在的表达式0
,然后使用having
检查此计数是否等于总计数的条件:68de4m5k3#
您可以使用group by和having子句来尝试此操作: