【发布时间】:2009-07-17 19:12:35
【问题描述】:
我必须在 DB2 数据库中搜索由两列连接而成的字符串。有没有办法 CONCAT 列然后在 WHERE 子句中使用组合字符串?
【问题讨论】:
我必须在 DB2 数据库中搜索由两列连接而成的字符串。有没有办法 CONCAT 列然后在 WHERE 子句中使用组合字符串?
【问题讨论】:
在 IBM 手册中进行更多搜索后,我想出了适合我的解决方案;
Select
Col1 || Col2 as MyCol1
Where CONCAT(RTRIM(Col1),(RTRIM(Col2)) = 'searchvalue'
感谢您的帮助
【讨论】:
试试
select *
from MyTable
where Col1 concat Col2 = 'MySearchValue'
【讨论】:
有点像
SELECT *, CONCAT(column1, column2) AS s FROM table WHERE column3 = s
【讨论】:
最简单的解决办法,不用CONCAT()。
SELECT Col1 || Col2 as MyCol1
FROM MY_TABLE
WHERE Col1 || Col2 = 'searchvalue'
请注意,搜索将不会被编入索引。如果你想让它被索引,你必须使用基于函数的索引。那么2种可能性:
【讨论】: