mysql中字串的拼接,能不能不使用concat函式

2022-03-05 01:01:34 字數 5186 閱讀 9965

1樓:du瓶邪

concat_ws()函式, 表示concat with separator,即有分隔符的字串連線

如連線後以逗號分隔

mysql> select concat_ws(',','11','22','33');

+-------------------------------+

| concat_ws(',','11','22','33') |

+-------------------------------+

| 11,22,33 |

+-------------------------------+

1 row in set (0.00 sec)

和concat不同的是, concat_ws函式在執行的時候,不會因為null值而返回null

mysql> select concat_ws(',','11','22',null);

+-------------------------------+

| concat_ws(',','11','22',null) |

+-------------------------------+

| 11,22 |

+-------------------------------+

1 row in set (0.00 sec)

2樓:

能使用。

mysql concat函式可以連線一個或者多個字串,如select concat('10');

結果:10

select concat('11','22','33');

結果112233

mysql的concat函式在連線字串的時候,只要其中一個是null,那麼將返回null

select concat('11','22',null);

結果null

3樓:邊皎蓬靖柏

簡單的方法是你在儲存過程中列印sql,

sety_sql=concat_ws('

','insert','into',tmp4data,'value','(',var1,var2,')');

select

y_sql;

看看y_sql合併生什麼,

其次在動態sql過程中,

你定義的tmp4data到底是變數還是表的名稱,如果是名稱就需要新增分號

4樓:匿名使用者

可以呀,可以用加號來聯接

mysql中的concat函式的使用問題

5樓:匿名使用者

select a.*,group_concat(b.picture_path) from ep_pollution_comments a left

join ep_pollution_comments_picture b on a.comments_id = b.comments_id group by a.

comments_id,a.pollution_id,a.comments_chile,a.

comments_info, a.create_time,a.user_id;

mysql中的concat用法!

6樓:匿名使用者

這個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()函式_w3cschool

7樓:匿名使用者

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

8樓:匿名使用者

concat 等同於字串連線符 ||,

你的等價於

concat(goods_sn,goods_title,goods_brief,goods_name) like '%tablet%'

goods_sn||goods_title||goods_brief||goods_name like '%tablet%

9樓:汪雄輝拉

舉個例子 select concat('aa','bb');------------最終顯示的就是 aabb,同時,concat有 to_char的作用,就是把其他型別轉成varchar型別的

mysql中concat函式的日期拼接方法

10樓:一笑就癲

select concat(date_format((date_sub(curdate(),interval +2 day)),'%y-%m-%d'),' ','22:50:00') from dual;

11樓:火籬笆

試試下面這樣行不

concat("2015","-","05","-","07"," ","12",":","00",":","00")

12樓:文冬

concat('2015-05-07','12:00:00')

這樣可以嗎?

sql怎麼拼接字串

13樓:糖老師快樂的一天

字串 + 字串,則直接進行拼接。若某欄位為null,則計算結果為null。

sql server中沒有concat函式(sql server 2012已新增concat函式)。oracle和mysql中雖然都有concat,但是oracle中只能拼接2個字串,所以建議用||的方式;mysql中的concat則可以拼接多個字串。

14樓:匿名使用者

以sqlserver,oracle,mysql三種資料庫為例,因為這三種資料庫具有代表性。

sqlserver:

select '123'+'456';

oracle:

select '123'||'456' from dual;

或select concat('123','456') from dual;

mysql:

select concat('123','456');

注意:oracle和mysql中雖然都有concat,但是oracle中只能拼接2個字串,所以建議用||的方式;mysql中的concat則可以拼接多個字串。

15樓:你以為你以為

例子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'

16樓:匿名使用者

sql 是+,如select 'ex'+'11'

oracle是|| oracle就是上面那個朋友寫的

17樓:

select 'ex' || '11' from dual

Oracle字串的拆分和拼接,Oracle字串的拆分和拼接

如果是固定的格式,那就好辦,檢測欄位中的 分割成四段,然後按要求接起來。使用函式好些,可以直接呼叫。函式寫好 已經測試過。create or replace function json montage json in varchar2 return varchar2 is in json varch...

mysql自動生成字串的主鍵是自動增長的

建議使用uuid作為主鍵,select replace uuid insert的時候用這個replace uuid mysql 通過auto increment設定 mysql create table test create tab2 id int auto increment,val varch...

VB從右邊擷取字串,vb 中如何從字串的右端第n個位置開始擷取指定長度的字串

vb 從右邊擷取字串可以使用right函式 private sub command1 click s 1234567890 s1 right s,4 print s 的右邊4個字元是 s1end sub private sub command1 click 如果是數字有很多種方法可以實現 a 888...