在 SQL 中使用 LIKE

Using LIKE in SQL

代码的第一部分是我用来创建大小 class 报告的代码。它工作得很漂亮。但是,我需要缩小此操作的范围,但仅限于以 11 或 21 开头的 CODE 值。代码是一个字符 (6) 主键字段,如果有帮助的话。我尝试使用的 Where 语句位于底部。我把它放在第一个 SELECT 语句之后。我得到一个不正确的语法错误。

我把 where 语句放在哪里有关系吗? 其次,where 语句是否符合其预期目的?

SELECT 
[Areas].[Area], 
[classSizes].[sizeclass],
SUM([data].[Employment]) AS [Employment in Size Class],
CASE COUNT([data].[Employment])
    WHEN 0 THEN NULL
    ELSE COUNT([data].[Employment])
    END  AS [Number of Sites]
    FROM (SELECT DISTINCT 
    [Area] 
FROM [sizeclassreport]) AS [Areas] 
CROSS JOIN (SELECT DISTINCT 
            [sizeclass] 
        FROM [sizeclassreport]) AS [classSizes]
 LEFT OUTER JOIN [sizeclassreport] [data]
 ON [Areas].[Area] = [data].[Area] 
    AND [classSizes].[sizeclass] = [data].[sizeclass]
GROUP BY
[areas].[Area], 
[classSizes].[sizeclass]
ORDER BY
[areas].[Area], 
[classSizes].[sizeclass]

Where code like '11%' or '21%'

Msg 156, Level 15, State 1, Line 2
Incorrect syntax near the keyword 'Where'

除了其他人所说的关于从句顺序的内容外,这是无效的语法:

Where code like '11%' or '21%'

你需要写成:

Where code like '11%' or code like '21%'