如下,为什么我写了这样一句后就语法错误了呢?

不是说用‘||’可以将两个字符串连接起来的吗,
select * from myDB where name = 'a'||'bc'
还请高手赐教
试过MySQL和SQLserver,都说我语法错误 
那“+”号是所有数据库通用的吗?

萧十郎
浏览 126回答 3
3回答

弑天下

在MYSQL中字符串连接使用的是concat内置函数。可以写为:select * from myDB where name =concat('a','bc')在SQL Server中字符串连接用+号。可以写为:select * from myDB where name ='a'+'bc' 在Oracle中字符串连接用的是||号。

慕森卡

select*fromawhere(SUBSTR(value,0,2)||'-'||SUBSTR(value,2,5)||'-'||SUBSTR(value,8,9))notin(selectbfromdata);或者直接更新valueupdateasetvalue=(SUBSTR(value,0,2)||'-'||SUBSTR(value,2,5)||'-'||SUBSTR(value,8,9));如果不是ORACLE的话SUBSTR换成SUBSTRING,||换成+ 

侃侃尔雅

oracle中是用 || 链接字符串的,但是你select * from myDB where name = 'a'||'bc'这种写法也是错的,肯定会报数据库错误的。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

SQL Server