【发布时间】:2023-01-06 22:15:19
【问题描述】:
概述:我有一个简单的查询,它试图检索 SENTIMENT 列 = Negative 的所有记录。但是,where 子句需要一个列名,而不是字符串。
背景信息:我正在使用 Microsoft SQL Server Management Studio 并浏览一个表。我写了以下查询 -
SELECT TOP (1000) [VARNAME], [SENTIMENT], [VALUE] FROM my_table WHERE [SENTIMENT] = "Negative";
这导致错误 - "Invalid column name 'Negative'
如果我改写,查询就会运行
SELECT TOP (1000) [VARNAME], [SENTIMENT], [VALUE] FROM my_table WHERE [SENTIMENT] = [SENTIMENT];
但显然这是一个无用的查询,而不是我需要的。
问题:我不清楚为什么这个 WHERE 子句不将字符串作为其参数,而是需要一个列名。我的语法有什么问题?
【问题讨论】:
-
请改用单引号。
标签: sql