mysql中的concat用法!
concat(goods_sn,goods_title,goods_brief,goods_name) LIKE '%tablet%'
这个是什么意思呢? 展开
这个sql语句是指从数据库表里面拼接组合goods_sn,goods_title,goods_brief,goods_name 有包含tablet字段的数据。等价于goods_sn||goods_title||goods_brief||goods_name LIKE '%tablet%。
concat 等同于字符串连接符 ||,concat(字串1, 字串2, 字串3, ...),将字串1、字串2、字串3,等字串连在一起。
扩展资料:
MySQL,Oracle,SQL Server拼接字符串查询示例:
例子1:
MySQL:
SELECT CONCAT(region_name,store_name) FROM Geography WHERE store_name = 'Boston';
例子2:
Oracle:
SELECT region_name || ' ' || store_name FROM Geography WHERE store_name = 'Boston';
例子3:
SQL Server:
SELECT region_name + ' ' + store_name FROM Geography WHERE store_name = 'Boston';
MySQL的concat函数可以连接一个或者多个字符串,如
mysql> select concat('10');+--------------+| concat('10') |+--------------+| 10 |+--------------+1 row in set (0.00 sec) mysql> select concat('11','22','33');+------------------------+| concat('11','22','33') |+------------------------+| 112233 |+------------------------+1 row in set (0.00 sec)使用方法:
CONCAT_WS(separator,str1,str2,...)
CONCAT_WS() 代表 CONCAT With Separator ,是CONCAT()的特殊形式。第一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个字符串之间。分隔符可以是一个字符串,也可以是其它参数。
注意:
如果分隔符为 NULL,则结果为 NULL。函数会忽略任何分隔符参数后的 NULL 值。
使用方法:
CONCAT(str1,str2,…)
返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。
注意:
如果所有参数均为非二进制字符串,则结果为非二进制字符串。
如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。
一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型 cast
1.>CONCAT拼接字符串
SELECT CONCAT('HELLO', ' WORLD') AS expr
>GROUP_CONCAT可以和GROUP BY语句一起用
SELECT GROUP_CONCAT(name) AS names FROM xxx
2.SELECT GROUP_CONCAT(name) AS names FROM xxx GROUP BY yy
>将符合条件的同一列中的不同行数据拼接, 以逗号分隔
>names返回的是blob类型, 在java中需要特殊处理, 否则出错:
No Dialect mapping for JDBC type:
或者将其转化为varchar类型
SELECT TRIM(GROUP_CONCAT(name)) AS names FROM xxx
你的等价于
concat(goods_sn,goods_title,goods_brief,goods_name) LIKE '%tablet%'
goods_sn||goods_title||goods_brief||goods_name LIKE '%tablet%
是这些字段的值组合在一起,然后 like '%tablet%';
还是
goods_sn like '%tablet%' or goods_title like '%tablet%' or goods_brief like '%tablet%' or goods_name like '%tablet%'
组合起来之后