SQL count 사용 기준 브랜치
6550 단어 SQL
CREATE table person(
id int not NULL auto_increment primary key,
sex VARCHAR(255)
);
I insert data.INSERT INTO person(sex)VALUES('m');
INSERT INTO person(sex)VALUES('m');
INSERT INTO person(sex)VALUES('m');
INSERT INTO person(sex)VALUES(null);
INSERT INTO person(sex)VALUES(null);
INSERT INTO person(sex)VALUES('f');
INSERT INTO person(sex)VALUES('f');
INSERT INTO person(sex)VALUES('f');
INSERT INTO person(sex)VALUES('f');
These are current data.SELECT * FROM person;
SELECT COUNT(*) FROM person;
=> 9The COUNT() does not count null.
SELECT COUNT(sex) FROM person;
=> 7sex='m' is 3. Other false data return null.
The COUNT() does not count null.
SELECT COUNT(sex='m' or null) FROM person;
=> 3sex='f' is 4. Other false data return null.
The COUNT() does not count null.
SELECT COUNT(sex='f' or null) FROM person;
=> 4We can count male, female in both way.
SELECT
COUNT(sex='m' or NULL),
COUNT(sex='f' or NULL)
FROM person;
SELECT
SUM(CASE WHEN sex='m' then 1 else 0 end),
SUM(CASE WHEN sex='f' then 1 else 0 end)
FROM
person;
We can check SQL cost like this.It is same in this case.
SHOW LOCAL STATUS like 'Last_query_cost';
Reference
이 문제에 관하여(SQL count 사용 기준 브랜치), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/joji/items/ee340e83e67a4f9873f6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)