简单的SQL查询,如何检查列值是否以与另一列值相同的5个字母开头

时间:2011-11-29 16:43:01

标签: sql database postgresql

我确信这很简单,请原谅我,

我想知道如何检查列值的前5个字母(例如name1)是否等于另一列值的前五个字母,例如。 (name2

我确定像

这样简单
SELECT * FROM table1
WHERE name1*first 5* = name2*first 5*

感谢 你

1 个答案:

答案 0 :(得分:2)

T-SQL:

SELECT *
FROM table1
WHERE LEFT(name1, 5) = LEFT(name2, 5)

但ANSI表格是:

SELECT *
FROM table1
WHERE SUBSTRING(name1 FROM 1 FOR 5) = SUBSTRING(name2 FROM 1 FOR 5)

对于PostgreSQL,请使用ANSI表单:http://www.postgresql.org/docs/current/static/functions-string.html