2
我想选择多个列值并将它们连接成一列。然后我想在选择值的列上运行一个LIKE。但它似乎并不奏效。sql server select与like连接?
这是我的SQL查询。
SELECT col1 + ' ' + col2 + ' ' + col3 AS colname
FROM tblname
WHERE 'colname' LIKE 'test%'
这个查询有什么问题?有一个更好的方法吗?
我想选择多个列值并将它们连接成一列。然后我想在选择值的列上运行一个LIKE。但它似乎并不奏效。sql server select与like连接?
这是我的SQL查询。
SELECT col1 + ' ' + col2 + ' ' + col3 AS colname
FROM tblname
WHERE 'colname' LIKE 'test%'
这个查询有什么问题?有一个更好的方法吗?
SELECT
col1 + ' ' + col2 + ' ' + col3 AS colname
FROM tblname
WHERE (col1 + ' ' + col2 + ' ' + col3) LIKE 'test%'
或者
select *
from
(
SELECT
col1 + ' ' + col2 + ' ' + col3 AS colname
FROM tblname
)a
WHERE colname LIKE 'test%'
这是因为列的别名不能在WHERE
子句中使用。您可能需要明确指出别名定义的内容,或者使用子查询来抽象化别名。
真棒谢谢你。第一个完美的作品。 – startupsmith 2012-01-02 01:34:04
@lanks很好,很高兴帮助! – 2012-01-02 01:34:36