mee*_*nxo 11 php postgresql string-constant
我一直在拔头发.我有一个非常简单的postgre数据库,一个特定的表有一个名为lName(大写N)的列.现在我知道postgre我必须引用lName,因为它包含一个大写的N.
我试图用以下语句查询数据库:
SELECT*FROM employee WHERE"lName"LIKE"Smith"
但我收到此错误:
警告:pg_query()[function.pg-query]:查询失败:错误:列"Smith"在.....中不存在
这是什么问题?为什么说这个专栏是"史密斯"?
Mar*_*ell 26
我猜:
SELECT * FROM employee WHERE "lName" LIKE 'Smith'
Run Code Online (Sandbox Code Playgroud)
(注意不同的引号; "foo"
是带引号的标识符; 'foo'
是字符串文字)
此外,在大多数SQL方言中,LIKE
没有通配符的等价于=
; 你的意思是包含一个通配符吗?
因为"Smith"
是一个标识符,在那个位置,一个标识符应该是一个列。您可能指的是字符串文字,它使用单引号:'Smith'
. 所以
SELECT * FROM employee WHERE "lName" LIKE 'Smith'
Run Code Online (Sandbox Code Playgroud)
您可能还希望在字符串中使用通配符来搜索 ( 'Smith%'
?)。 LIKE
匹配锚定在字符串的开头和结尾,这与典型的正则表达式匹配不同。
归档时间: |
|
查看次数: |
7837 次 |
最近记录: |