在做業(yè)務(wù)數(shù)據(jù)分析的時(shí)候,可能會(huì)遇到這樣一個(gè)場(chǎng)景,需要將多個(gè)字段進(jìn)行拼接 , 變?yōu)橐粋€(gè)長(zhǎng)字符串
比如年、月、日三個(gè)字段拼接成完整的日期,或者姓、名兩個(gè)字段拼接成姓名列
這就需要用到SQL查詢中串聯(lián)(拼接)方法,這在不同數(shù)據(jù)庫(kù)中語(yǔ)法會(huì)有差異 , 下面會(huì)演示MySQL、Oracle、PostgreSQL、SQL Server這四種數(shù)據(jù)庫(kù)中的實(shí)現(xiàn)方法 。

文章插圖
1、插入數(shù)據(jù)這里用的是MySQL數(shù)據(jù)庫(kù),插入原始數(shù)據(jù),用于后面的實(shí)驗(yàn)
其他數(shù)據(jù)庫(kù)的插入語(yǔ)法,可能會(huì)有細(xì)微差別,可自行調(diào)整
CREATE TABLE IF NOT EXISTS `students` (`id` varchar(10) NOT NULL,`name` varchar(10) NOT NULL,`age` datetime NOT NULL,`sex` varchar(10) NOT NULL,PRIMARY KEY (`id`)) DEFAULT CHARSET=utf8;insert into `students` values('01' , '趙雷' , '1990-01-01' , '男');insert into `students` values('02' , '錢(qián)電' , '1990-12-21' , '男');insert into `students` values('03' , '孫風(fēng)' , '1990-05-20' , '男');insert into `students` values('04' , '李云' , '1990-08-06' , '男');insert into `students` values('05' , '周梅' , '1991-12-01' , '女');得到數(shù)據(jù)的形式
文章插圖
2、在MySQL中進(jìn)行串聯(lián)拼接使用concat函數(shù)對(duì)不同字段進(jìn)行拼接 , 用法:
select concat(列1,列2,列3...) from...我們對(duì)上表中name、age字段進(jìn)行串聯(lián):SELECT concat(a.name,'的生日是:',a.age) FROM `students` a結(jié)果:
文章插圖
2、在PostgreSQL、Oracle中進(jìn)行串聯(lián)拼接使用||符號(hào)對(duì)不同字段進(jìn)行拼接,用法:
select 列1 || 列2 || 列3... from...我們對(duì)上表中name、age字段進(jìn)行串聯(lián):SELECT a.name || '的生日是:' || a.age FROM students a3、在SQL Server中進(jìn)行串聯(lián)拼接使用+符號(hào)對(duì)不同字段進(jìn)行拼接,用法:select 列1 + 列2 + 列3... from...我們對(duì)上表中name、age字段進(jìn)行串聯(lián):SELECT a.name + '的生日是:' + convert(varchar,a.age) FROM students a【SQL數(shù)據(jù)庫(kù)實(shí)訓(xùn)總結(jié) sql查詢結(jié)果拼接為多列】這里要注意SQL Server中的+只可以用于字符串類(lèi)型的字段拼接 , 不能將字符串與數(shù)字、日期等其他類(lèi)型混合拼接,所以如果你想拼接非字符串類(lèi)型,可以用 convert函數(shù)進(jìn)行字符串的轉(zhuǎn)換 。當(dāng)然 SQL Server中的+ 也可以用于數(shù)值間的相加 , 也就是加法運(yùn)算
其他數(shù)據(jù)庫(kù)的用法與上述這些大同小異,不再一一列舉 。
以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問(wèn)題,請(qǐng)您及時(shí)就醫(yī)或請(qǐng)專(zhuān)業(yè)人士給予相關(guān)指導(dǎo)!
「愛(ài)刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對(duì)您有所幫助:- Access數(shù)據(jù)庫(kù)中SQL語(yǔ)句使用技巧
- 如何在Visual Studio中添加數(shù)據(jù)庫(kù)角色
- 如何在Power BI中連接MySQL數(shù)據(jù)源
- Navicat:讓MySQL管理更簡(jiǎn)單
- MySQL數(shù)據(jù)查詢與排列優(yōu)化技巧
- SQL Server 2000安裝詳細(xì)步驟
- MySQL5.7.21.0開(kāi)源數(shù)據(jù)庫(kù)安裝教程詳解
- PLSQL如何設(shè)置表的主鍵
- MySQL如何獲取連續(xù)日期
- 使用報(bào)表向?qū)?chuàng)建Access數(shù)據(jù)庫(kù)報(bào)表
