Select*fromStudents;+----+------------+--------- - ---------------+---+|id|이름 |국가 |언어|강좌 |+----+- - ---------+---------"/> Select*fromStudents;+----+------------+--------- - ---------------+---+|id|이름 |국가 |언어|강좌 |+----+- - ---------+---------">

 >  기사  >  데이터 베이스  >  MySQL CASE 문에서 열 데이터를 사용하는 방법은 무엇입니까?

MySQL CASE 문에서 열 데이터를 사용하는 방법은 무엇입니까?

PHPz
PHPz앞으로
2023-09-11 16:05:13875검색

如何在 MySQL CASE 语句中使用列数据?

이를 이해하려면 아래 표시된 "학생" 테이블의 데이터를 고려하세요. -

mysql> Select * from Students;
+----+-----------+-----------+----------+----------------+
| id | Name      | Country   | Language | Course         |
+----+-----------+-----------+----------+----------------+
| 1  | Francis   | UK        | English  | Literature     |
| 2  | Rick      | USA       | English  | History        |
| 3  | Correy    | USA       | English  | Computers      |
| 4  | Shane     | France    | French   | Computers      |
| 5  | Validimir | Russia    | Russian  | Computers      |
| 6  | Steve     | Australia | English  | Geoinformatics |
| 7  | Rahul     | India     | Hindi    | Yoga           |
| 8  | Harshit   | India     | Hindi    | Computers      |
| 9  | Harry     | NZ        | English  | Electronics    |
+----+-----------+-----------+----------+----------------+
9 rows in set (0.00 sec)

이제 미국, 영국, 뉴질랜드, 인도, 러시아, 프랑스 등에 속하는 학생 수를 알고 싶다고 가정해 보겠습니다. 그런 다음 아래와 같이 CASE 문에서 국가 열을 사용할 수 있습니다. -

mysql> Select SUM(CASE WHEN country = 'USA' THEN 1 ELSE 0 END) AS USA,
-> SUM(CASE WHEN country = 'UK' THEN 1 ELSE 0 END) AS UK,
-> SUM(CASE WHEN country = 'INDIA' THEN 1 ELSE 0 END) AS INDIA,
-> SUM(CASE WHEN country = 'Russia' THEN 1 ELSE 0 END) AS Russia,
-> SUM(CASE WHEN country = 'France' THEN 1 ELSE 0 END) AS France,
-> SUM(CASE WHEN country = 'NZ' THEN 1 ELSE 0 END) AS NZ,
-> SUM(CASE WHEN country = 'Australia' THEN 1 ELSE 0 END) AS Australia
-> From Students;
+------+------+-------+--------+--------+------+-----------+
| USA  | UK   | INDIA | Russia | France | NZ   | Australia |
+------+------+-------+--------+--------+------+-----------+
| 2    | 1    | 2     | 1      | 1      | 1    | 1         |
+------+------+-------+--------+--------+------+-----------+
1 row in set (0.07 sec)

위 내용은 MySQL CASE 문에서 열 데이터를 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제