一尘不染

简单的Postgresql语句-列名不存在

php

我一直在拔头发。我有一个非常简单的postgre数据库,一个特定的表有一个名为lName(大写N)的列。现在我知道使用postgre我必须引用lName,因为它包含一个大写的N。

我正在尝试使用以下语句查询数据库:

SELECT * 
FROM employee 
WHERE "lName" LIKE "Smith"

但我收到此错误:

警告:pg_query()[function.pg-query]:查询失败:错误:..中不存在列“ Smith”。

这是什么问题?为什么说该列为“史密斯”?


阅读 421

收藏
2020-05-29

共1个答案

一尘不染

我猜:

 SELECT * FROM employee WHERE "lName" LIKE 'Smith'

(请注意不同的引号;"foo"是带引号的标识符;'foo'是字符串文字)

同样,在大多数SQL方言中,LIKE不带通配符的a等效于=;。您是要添加通配符吗?

2020-05-29