-- Start
假设有下面的表。
CREATE TABLE STUDENT
(
ID NUMBER(10, 0) NOT NULL, -- 学号
NAME VARCHAR(20) NOT NULL, -- 姓名
BIRTHDAY DATE -- 生日
);
INSERT INTO STUDENT (ID,NAME,BIRTHDAY) VALUES (1, '张三', DATE '1991-1-1');
INSERT INTO STUDENT (ID,NAME,BIRTHDAY) VALUES (2, '李四', DATE '1991-1-1');
INSERT INTO STUDENT (ID,NAME,BIRTHDAY) VALUES (3, '王五', NULL);
现在让你统计以下这个表有多少条数据,怎么办?很简单,我们有下面三种方法。
-- 方法1
SELECT COUNT(*) FROM STUDENT;
-- 方法2
SELECT COUNT(1) FROM STUDENT;
-- 方法3
SELECT COUNT(BIRTHDAY) FROM STUDENT;
遗憾的是方法3统计出的数据并不总是正确的,那是因为 COUNT 函数会忽略 NULL 值。 所以,千万不要统计可以为 NULL 的列。
--更多参见:Oracle SQL 精萃
-- 声明:转载请注明出处
-- Last edited on 2015-02-23
-- Created by ShangBo on 2015-02-23
-- End