sta*_*ith 2 sql sql-server select sql-server-2008
我正在尝试选择多个列值并将它们连接成一列。然后我想在选择值的列上运行 LIKE。但是,它似乎不起作用。
这是我的 SQL 查询。
SELECT col1 + ' ' + col2 + ' ' + col3 AS colname
FROM tblname
WHERE 'colname' LIKE 'test%'
Run Code Online (Sandbox Code Playgroud)
这个查询有什么问题?有一个更好的方法吗?
小智 5
SELECT
col1 + ' ' + col2 + ' ' + col3 AS colname
FROM tblname
WHERE (col1 + ' ' + col2 + ' ' + col3) LIKE 'test%'
Run Code Online (Sandbox Code Playgroud)
或者
select *
from
(
SELECT
col1 + ' ' + col2 + ' ' + col3 AS colname
FROM tblname
)a
WHERE colname LIKE 'test%'
Run Code Online (Sandbox Code Playgroud)
这是因为不能在WHERE子句中使用列别名。您要么需要明确指出别名定义的内容,要么使用子查询来抽象别名。
| 归档时间: |
|
| 查看次数: |
4490 次 |
| 最近记录: |