在MySQL concat里面使用多个单引号,三引号的问题
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,在动态拼接字符串时,我们常会用到字符拼接,我对拼接的引号不理解,如:1、'''+ id +''' 为什么是3个引号,为什么左边一个加号右边一个加号(能不能着重帮我解释下这个,详细点)SQL codes
千家信息网最后更新 2025年11月07日在MySQL concat里面使用多个单引号,三引号的问题
在动态拼接字符串时,我们常会用到字符拼接,我对拼接的引号不理解,如:
1、'''+ id +''' 为什么是3个引号,为什么左边一个加号右边一个加号(能不能着重帮我解释下这个,详细点)
SQL code
sum(case Leave when '''+ id +''' then DaysNo else 0 end) ['+ name +']'
正常语句:
SQL code
SUM(CASE Leave WHEN '01' THEN DaysNo END) AS [事假],
SUM(CASE Leave WHEN '02' THEN DaysNo END) AS [病假]
简答:
简单的来说一般单引号是拼接语句用的,3个引号拼接是字符串变量值。
因为引号是有特殊含义的,所以要写2次,进行转义
2、字符串单引号和双引号有区别吗?
简单来说,如果是正常使用就单引号,,如果你在单引号里面还要使用单引号 。那么就要额外增加一个单引号(转义使用),变成3个单引号。
在标准 SQL 中,字符串使用的是单引号。
如果字符串本身也包括单引号,使用两个单引号(注意,不是双引号,字符串中的双引号不需要另外转义)。
MySQL对 SQL 的扩展,允许使用单引号和双引号两种。
简单总结:
通过concat拼字符串的时候,如果语句里面需要使用单引号,可以使用两个单引号来代替一个引号
mysql> select concat('drop user ''''@', '''', @@hostname, '''');+----------------------------------------------------+| concat('drop user ''''@', '''', @@hostname, '''') |+----------------------------------------------------+| drop user ''@'bei-f0q5bc2.gemalto.com' |+----------------------------------------------------+1 row in set (0.00 sec)补充拓展:mysql插入字符串带单引号+双引号
如下所示:
String needInsertStr= 单双引号的字符串;String finalStr = needInsertStr.replaceAll("'", "\\\\\'"); //作用等于在单引号前面加上转义符号\//对于其他特殊字符也是一样long dateMillions = System.currentTimeMillis();StringBuilder stringBuilder = new StringBuilder();stringBuilder.append("insert into ");stringBuilder.append(tableName);stringBuilder.append("(uuid,name,metric_id,service_id,script,deleted,created,updated) ");stringBuilder.append("values(uuid(),'");stringBuilder.append(name);stringBuilder.append("','");stringBuilder.append(name);stringBuilder.append("','");stringBuilder.append(serviceId);stringBuilder.append("','");stringBuilder.append(finalStr);stringBuilder.append("',0,");stringBuilder.append(dateMillions);stringBuilder.append(",");stringBuilder.append(dateMillions);stringBuilder.append(")");return stringBuilder.toString();// script字段即是带单双引号的字符串insert into table(string) values(' "这是测试语句"+\'测试单双引号\' ')
以上这篇在MySQL concat里面使用多个单引号,三引号的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
引号
字符
字符串
语句
转义
特殊
两个
加号
测试
多个
问题
事假
作用
内容
动态
右边
含义
字段
就是
常会
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
如何进入学校内网服务器
凉山网络技术哪个好
无锡hpe服务器报价
未成年网络安全课程方案
软件开发未来产品和服务规划
较为规范的软件开发流程
网络技术机一级证训练题
写篇关于网络安全的英语作文
齐鲁软件开发大赛
护苗网络安全进课堂教案
mac 登陆远程服务器
江苏睿途网络技术有限公司
软件开发哪种语言最实用
和平精英服务器分析
TBC怀旧服服务器碧空之歌
新疆大型网络技术公司
lol在广东的服务器云空间
正数网络技术有限公司成立
图情专业文摘数据库
崇明区提供软件开发代理品牌
代理服务器软件哪个好
去哪里学习网络安全
博山企业管理软件开发
乾颐堂网络安全吗
nodejs进程查询数据库
我的梦想 软件开发
x86和云服务器有什么关系
sqlite数据库可以删除吗
数据库怎么建立级联
udi数据库怎么编制