case when then else SQL语句
sql语句判断方法之一 Case具有两种格式。简单Case函数和Case搜索函数。 --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他' END 这两种方
sql语句判断方法之一
Case具有两种格式。简单Case函数和Case搜索函数。
--简单Case函数
CASE sex
WHEN '1' THEN '男'
WHEN '2' THEN '女'
ELSE '其他' END
--Case搜索函数
CASE WHEN sex = '1' THEN '男'
WHEN sex = '2' THEN '女'
ELSE '其他' END
这两种方式,可以实现相同的功能。简单Case函数的写法相对比较简洁,但是和Case搜索函数相比,功能方面会有些限制,比如写判断式。
还有一个需要注意的问题,Case函数只返回第一个符合条件的值,剩下的Case部分将会被自动忽略。
例子:
有一张表,里面有3个字段:语文,数学,免备案空间,英语。其中有3条记录分别表示语文70分,数学80分,英语58分,请用一条sql语句查询出这三条记录并按以下条件显示出来(并写出您的思路):
大于或等于80表示优秀,美国服务器,大于或等于60表示及格,小于60分表示不及格。
显示格式:
语文 数学 英语
及格 优秀 不及格
------------------------------------------
select
(case when 语文>=80 then '优秀'
when 语文>=60 then '及格'
else '不及格') as 语文,
(case when 数学>=80 then '优秀'
when 数学>=60 then '及格'
else '不及格') as 数学,
(case when 英语>=80 then '优秀'
when 英语>=60 then '及格'
else '不及格') as 英语,
from table
CASE 可能是 SQL 中被误用最多的关键字之一。虽然你可能以前用过这个关键字来创建字段,但是它还具有更多用法。例如,美国服务器,你可以在 WHERE 子句中使用 CASE。
首先让我们看一下 CASE 的语法。在一般的 SELECT 中,其语法如下:
SELECT
CASE
WHEN THEN
WHEN THEN
ELSE
END
在上面的代码中需要用具体的参数代替尖括号中的内容。下面是一个简单的例子:
USE pubs
GO
SELECT
Title,
'Price Range' =
CASE
WHEN price IS NULL THEN 'Unpriced'
WHEN price WHEN price BETWEEN 10 and 20 THEN 'Average'
ELSE 'Gift to impress relatives'
END
FROM titles
ORDER BY price
GO
这是 CASE 的典型用法,但是使用 CASE 其实可以做更多的事情。比方说下面的 GROUP BY 子句中的 CASE:
SELECT 'Number of Titles', Count(*)
FROM titles
GROUP BY
CASE
WHEN price IS NULL THEN 'Unpriced'
WHEN price WHEN price BETWEEN 10 and 20 THEN 'Average'
ELSE 'Gift to impress relatives'
END
GO
你甚至还可以组合这些选项,添加一个 ORDER BY 子句,如下所示:
USE pubs
GO
SELECT
CASE
WHEN price IS NULL THEN 'Unpriced'
WHEN price WHEN price BETWEEN 10 and 20 THEN 'Average'
ELSE 'Gift to impress relatives'
END AS Range,
Title
FROM titles
GROUP BY
CASE
WHEN price IS NULL THEN 'Unpriced'
WHEN price WHEN price BETWEEN 10 and 20 THEN 'Average'
ELSE 'Gift to impress relatives'
END,
Title
ORDER BY
CASE
WHEN price IS NULL THEN 'Unpriced'
WHEN price WHEN price BETWEEN 10 and 20 THEN 'Average'
ELSE 'Gift to impress relatives'
END,
Title
GO

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











HMD 스카이라인(아마존에서 499달러에 구매 가능)이 지난달 출시 당시 네온 핑크와 트위스티드 블랙 두 가지 색상으로 출시됐다. 그들은 이제 블루 토파즈(Blue Topaz)라고 불리는 세 번째 색상과 합류했습니다. HMD 글로벌도 ph에 대한 공식 사례를 발표했다.

Switchcase에서는 변수를 결정하기 위해 특정 코드 예제가 필요합니다. 프로그래밍에서는 다양한 변수 값을 기반으로 다양한 작업을 수행해야 하는 경우가 많습니다. switchcase 문은 변수 값에 따라 실행할 다양한 코드 블록을 선택할 수 있는 편리한 구조입니다. 다음은 변수의 다양한 값을 결정하기 위해 switchcase 문을 사용하는 방법을 보여주는 특정 코드 예입니다. #includeintmain(){

웹 애플리케이션이 개발되면서 PHP 언어가 웹 개발에 널리 사용되었습니다. PHP8.0 버전에서는 새로운 언어 기능인 multi-catch 문이 도입되었습니다. 다중 캐치 문이란 무엇입니까? 이전 PHP 버전에서는 개발자가 여러 예외 유형을 처리하기 위해 여러 catch 문을 작성해야 했습니다. 예를 들어, 다음 코드 블록은 두 가지 다른 예외의 처리를 보여줍니다.

MySQL에 데이터 삽입 명령문을 구현하는 방법은 무엇입니까? MySQL 데이터베이스를 사용할 때 데이터 삽입은 매우 기본적이고 일반적인 작업입니다. 데이터를 삽입하면 새로운 레코드를 데이터베이스 테이블에 추가하여 비즈니스 운영을 지원할 수 있습니다. 이 기사에서는 MySQL에서 INSERT 문을 사용하여 데이터 삽입 작업을 구현하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. MySQL의 INSERT 문은 데이터베이스 테이블에 새 레코드를 삽입하는 데 사용됩니다. 기본 구문 형식은 다음과 같습니다. INSERTINTOt

Python은 배우기 쉽고 효율적이며 유연하며 널리 사용되는 고급 프로그래밍 언어입니다. Python에서 흐름 제어 문은 프로그램 논리 구현의 중요한 부분입니다. 이 글에서는 Python에서 일반적으로 사용되는 흐름 제어 문을 소개하고 이해를 돕기 위한 코드 예제를 제공합니다. Python에서 일반적인 흐름 제어 문에는 조건문과 루프 문이 포함됩니다. 조건문은 true 또는 false 조건에 따라 다양한 코드 블록을 실행하며 실행 분기를 결정하고 선택하는 데 사용됩니다. 반복문은 반복하는데 사용됩니다.

Python을 처음부터 배우려면 먼저 흐름 제어문의 유형을 이해하세요! Python은 데이터 분석, 인공 지능, 네트워크 개발 및 다양한 과학 컴퓨팅 분야에서 널리 사용되는 간단하고 강력한 프로그래밍 언어입니다. 기본적인 흐름제어문은 논리적 판단을 구현하고 프로그램 실행 흐름을 제어하는 기초가 되기 때문에 초보자로서 기본적인 흐름제어문을 익히는 것이 매우 중요합니다. Python에는 순차 구조, 조건 구조 및 루프 구조라는 세 가지 주요 유형의 흐름 제어 문이 있습니다. 다음은 이 세 가지 프로세스 제어 설명을 자세히 소개하고 해당 내용을 제공합니다.

Python의 루프 구조에서 else 블록은 루프가 정상적으로 종료될 때 특정 코드 조각을 실행하는 데 사용됩니다. break 문에 의해 루프가 중단되면 else 블록의 코드는 실행되지 않습니다. else 블록을 사용하면 코드를 더 명확하고 이해하기 쉽게 만들 수 있으며 루프가 끝난 후 몇 가지 필요한 작업을 수행할 수 있습니다.

MySQL에서 테이블 잠금을 해제하는 명령문을 구현하는 방법은 무엇입니까? MySQL에서 테이블 잠금은 데이터 무결성과 일관성을 보호하기 위해 일반적으로 사용되는 잠금 메커니즘입니다. 트랜잭션이 테이블을 읽고 쓰는 동안 다른 트랜잭션은 테이블을 수정할 수 없습니다. 이 잠금 메커니즘은 어느 정도 데이터 일관성을 보장하지만 다른 트랜잭션이 차단될 수도 있습니다. 따라서 어떤 이유로 트랜잭션을 계속할 수 없는 경우 다른 트랜잭션이 계속될 수 있도록 테이블을 수동으로 잠금 해제해야 합니다. MySQL은 다양한 기능을 제공합니다.
