Microsoft SQL。带有 varchar 类型列的 SELECT FROM WHERE 查询

Microsoft SQL。带有 varchar 类型列的 SELECT FROM WHERE 查询

在 SQL Server Management Studio 中,我正在尝试如下查询:

用人类的话说:给我表中“name”列中的字符串为“alice”的所有行。

我对这个 SQL 查询的尝试没有成功:

SELECT * FROM MyTable WHERE ["name"]=alice

我不知怎么找不到正确的语法。当列是 varchar 类型时,总是会出现错误。错误是:“...alice 不是有效的列名...”

当列是实数类型时它可以工作。例如:

SELECT * FROM MyTable WHERE ["age"]=30

希望有人能告诉我我在这里做错了什么。

谢谢

答案1

文本条件应该用引号括起来。请尝试以下查询。

SELECT * FROM MyTable WHERE name = 'alice' 

答案2

尝试:

SELECT * FROM Table WHERE name LIKE 'alice'

如果您使用的是 SQL Server:

SELECT * FROM Table WHERE [name] LIKE 'alice'

答案3

列用方括号 ( ) 表示[]。字符串文字用单引号 ( ) 表示'

SELECT * FROM MyTable WHERE [name] = 'alice'

相关内容