SQL Server:CASE BETWEEN错误,关键字'BETWEEN'附近的语法不正确

Mas*_*imo 1 sql-server case between

当我试图将年龄放入括号时,我得到以下错误.如果我写下面的内容,那么查询就会顺利进行,但是当然,大括号主要是"未知".

SELECT 
    ID,
    CASE age
       WHEN 40 THEN 'YOUNG'
       WHEN 50 THEN 'OLD'
       ELSE 'Not known'
    END as brackets
FROM table1
Run Code Online (Sandbox Code Playgroud)

如果我将查询更改为更合适,如下所示,我会收到有关主题的错误.我想知道这是什么线索.

SELECT 
    ID, 
    CASE age
        WHEN BETWEEN 18 AND 40 THEN 'young'
        WHEN BETWEEN 41 AND 99 THEN 'old'
        ELSE 'Not known'
    END as brackets
FROM table1
Run Code Online (Sandbox Code Playgroud)

Fel*_*tan 5

你应该这样做:

SELECT ID, 
CASE 
     WHEN age BETWEEN 18 AND 40 THEN 'young'
     WHEN age BETWEEN 41 AND 99 THEN 'old'
     ELSE 'Not known'
END as brackets
FROM table1
Run Code Online (Sandbox Code Playgroud)