SQL指令— CONCAT(字符串连接函数)
有的时候,我们有需要将由不同栏位获得的资料串连在一起。每一种资料库都有提供方法来达到这个目的:
- MySQL: CONCAT()
- Oracle: CONCAT(), ||
- SQL Server: +
CONCAT() 的语法如下:
CONCAT(字串1, 字串2, 字串3, ...) : 将字串1、字串2、字串3,等字串连在一起。请注意,Oracle的CONCAT()只允许两个参数;换言之,一次只能将两个字串串连起来。不过,在Oracle中,我们可以用'||'来一次串连多个字串。
来看几个例子。假设我们有以下的表格:
Geography 表格
region_name | store_name |
East | Boston |
East | New York |
West | Los Angeles |
West | San Diego |
例子1:
MySQL/Oracle :
SELECT CONCAT(region_name,store_name) FROM Geography
WHERE store_name = 'Boston';
结果 :
'EastBoston'
例子2:
Oracle :
SELECT region_name || ' ' || store_name FROM Geography
WHERE store_name = 'Boston';
结果 :
'East Boston'
例子3:
SQL Server :
SELECT region_name + ' ' + store_name FROM Geography
WHERE store_name = 'Boston';
结果 :
'East Boston'
mysql下一个示例
test表内有 year month day 3个char字段 代表年月日
SELECT * FROM `test` WHERE CONCAT ( `year` , '-' , `month` , '-' , `day` ) > '2008-06-05'