当前位置:首页 » 编程语言 » sql语句中的字符串拼接
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql语句中的字符串拼接

发布时间: 2022-08-25 13:47:08

‘壹’ sql查询字符串拼接

拼串的时候用char(39) 代替单引号,char(37)代替%

SET @sql = 'SELECT * FROM authors WHERE address LIKE '+char(39)+char(37)+@str+char(37)+char(39)

‘贰’ SQL如何实践字符串拼接:

--建表
createtableM
(
idint,
dictvarchar(10)
)
CreateTableN
(
billnoint,
dictdocvarchar(100)
)

--插入数据
insertintoMvalues(1,'A')
insertintoMvalues(2,'B')
insertintoMvalues(3,'C')
insertintoMvalues(4,'D')

insertintoNvalues(1,'1,2,3')
insertintoNvalues(2,'2,3')
insertintoNvalues(3,'1,2,3,4')

--创建函数
CreateFunctionfn_myStr(@StrVarchar(8000))
returnsVarchar(8000)
As
Begin
Declare@RStVarchar(8000)=@Str
Select@RSt=replace(@RSt,id,dict)
FromM
Return@RSt
End

--查询
Select*fromM
selectbillno,dbo.fn_myStr(dictdoc)AsdictdocfromN

‘叁’ Sql拼接字符串

sql
=
"select
*
from"
&
mc
'怎么拼对吗?
这个是正确的。
set
rs
=
Conn.execute("select
*
from
&
mc")
‘怎么拼接对吗?
这个是不对的。这个里面的
sql语句
建议赋值给一个变量,然后直接调用变量,当然也可以这么写,不过要注意格式:set
rs
=
Conn.execute("select
*
from
"&
mc)应该是这个样子的,不知道有没有记错,你试试看。

‘肆’ sql字符串拼接

DECLARE@IPNvarchar(50)
SET@IP='127.0.0.1'
EXECMaster..xp_cmdShell'ping''+@IP+''-n2'

‘伍’ SQL 建表语句字符串拼接,该怎么解决

以sqlserver,oracle,mysql三种数据库为例,因为这三种数据库具有代表性。
sqlserver:

1

select '123'+'456';

oracle:

123

select '123'||'456' from al;或select concat('123','456') from al;

mysql:

1

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

注意:oracle和mysql中虽然都有concat,但是oracle中只能拼接2个字符串,所以建议用||的方式;mysql中的concat则可以拼接多个字符串。

‘陆’ SQL中的连接字符串怎么拼接

  1. SQL字符串拼接直接用+ 号

  2. 如下列SQL

  3. 声明变量

  4. declare @T nvarchar(50)

  5. declare @T1 nvarchar(50)

  6. set @T='12434'

  7. set @T1='abc'

  8. 下面是拼接字符串SQL:

  9. select @T+@T1

  10. 结果:12434abc

  11. 如果是别的类型,用convert 函数直接转换

  12. 如 convert(varchar,'需要转换的数据')

‘柒’ sql查询语句怎么拼接字符串

--1、在where的地方可以用case
select*
from表1
where字段1=casewhen@字段1>0then@字段1end

--2、或者在赋值的时候做判断用4个参数,你可以根据下面的写法自己修改
@字段1,@字段2,@字段3,@字段
if@字段1>0
begin
select@字段=@字段1

select*
from表1
where字段1=@字段
end

ifif@字段1<0and@@字段2>0
begin
select@字段=@字段2

select*
from表1
where字段1=@字段
end

‘捌’ sql语句中的字符串连接

那要看你使用的是什么样的SQL系统,如果使用的是标准的SQL,一般可以这样写:
update
char
set
name=concat(name,"abc")
where
id=1;
这里要注意的是:concat是标准的字符串连接函数,你要保证你name属性的数据类型是字符串型的,还有,根据你使用的系统,决定引用字符串时是使用单引号还是双引号;如果你使用的系统是MySQL,MSSQL或者其他的SQL,一般还有对应的更加简洁的表达式。
还有,在有的SQL系统里,你上面的表达式是可以使用的,只需把单引号换双引号即可。
答案补充
你用我给你些的标准SQL的代码,绝对没有错,我刚才PHPMYADMIN上执行了的,没有问题。如果你不信的话我可以发图。

‘玖’ SQL中字符串的连接

在MYSQL中字符串连接使用的是concat内置函数。

CONCAT() 的语法如下:

CONCAT(字串1, 字串2, 字串3, ...): 将字串1、字串2、字串3,等字串连在一起。

请注意,Oracle的CONCAT()只允许两个参数;

换言之,一次只能将两个字串串连起来,不过,在Oracle中,可以用'||'来一次串连多个字串。

(9)sql语句中的字符串拼接扩展阅读:

注意:

如果所有参数均为非二进制字符串,则结果为非二进制字符串。

如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。

一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型 cast, 例如:

SELECT CONCAT(CAST(int_col AS CHAR), char_col)