作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要以排除缺少某些值但具有其他值的行的方式从数据集中选择观察结果。例如,我有以下变量:
A、日期A、B、日期B、C、日期C
我需要排除 A 不为空但缺少 dateA 值或 B 不为空但缺少 dateB 值或 C 不为空但缺少 dateC 值的行。另外,因为我的变量是结构化的,因此它们可以是空值,所以我一直在使用以下代码来识别“空”观察:
WHERE dateA > '';
我不确定要在 select 语句中放入什么来完成此操作。任何帮助将非常感激!谢谢!
这里编辑一些示例数据:(抱歉格式尴尬)
观测----A-----日期A
1--------3-----2002-02-13 00:00:00
2--------8-----2009-12-19 00:00:00
3--------0
4--------7
我想要的结果是选择观测值 1、2 和 3,但不是 4,因为它缺少 dateA 的值,但具有 A 的值。应包含 3,因为尽管它缺少值对于 dateA,A 的值为 0。我还有其他变量 B、dateB、C 和 dateC 需要以相同的方式进行选择。
最佳答案
要包含这些行,我们会这样做:
WHERE (A IS NOT NULL AND A != 0 AND dateA > '')
OR (B IS NOT NULL AND B != 0 AND dateB > '')
OR (C IS NOT NULL AND C != 0 AND dateC > '');
要排除这些,我们可以简单地使用 NOT:
WHERE NOT(
(A IS NOT NULL AND A != 0 AND dateA > '')
OR (B IS NOT NULL AND B != 0 AND dateB > '')
OR (C IS NOT NULL AND C != 0 AND dateC > '')
);
编辑:更新以下问题澄清。
关于mysql - 如何选择一个变量为空而另一个变量不为空的观测值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24784496/
我是一名优秀的程序员,十分优秀!