字符串拼接sql语句
1. sql中的连接字符串怎么拼接
SQL字符串拼接直接用+ 号
如下列SQL
声明变量
declare @T nvarchar(50)
declare @T1 nvarchar(50)
set @T='12434'
set @T1='abc'
下面是拼接字符串SQL:
select @T+@T1
结果:12434abc
如果是别的类型,用convert 函数直接转换
如 convert(varchar,'需要转换的数据')
2. sql字符串拼接
首先,sql server 中字符串拼接要用+连接
其次,exec执行存储过程时,参数中不能任何运算。因此需要先拼接好字符串,再将这个拼接好的结果传给存储过程。
DECLARE@IPNvarchar(50)
SET@IP='127.0.0.1'
DECLARE@CmdNvarchar(50)
SET@Cmd='ping'+@IP+'-n2'
EXECMaster..xp_cmdShell@Cmd
3. 求一条拼接字符串的sql语句
字符串的拼接可以用stuff函数来实现,我这里只用tab2展示结果,如下:
createtabletab2
(
c1varchar(20),
c2varchar(20)
)
insertintotab2
select'1001','AAA'unionall
select'1001','BBB'unionall
select'1003','CCC'unionall
select'1004','DDD'unionall
select'1004','EEE'
select*fromtab2
selectc1,value=stuff((SELECT','+c2FROMtab2ast2wheret2.c1=t1.c1FORxmlpath('')),1,1,'')fromtab2ast1groupbyc1
4. 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
5. SQL求大神拼接字符串
select CONCAT(CONCAT('drname','X'),'pack') from al 这样就可以拼接了 结果是drnameXpack
select CONCAT(CONCAT('drname','''X'''),'pack') from al 这个的拼接结果是drname'X'pack
你把drname和pack的值取出来,做CONCAT(CONCAT(drname,'X'),pack)就可以了
6. Sql拼接字符串
sql
=
"select
*
from"
&
mc
'怎么拼对吗?
这个是正确的。
set
rs
=
Conn.execute("select
*
from
&
mc")
‘怎么拼接对吗?
这个是不对的。这个里面的
sql语句
建议赋值给一个变量,然后直接调用变量,当然也可以这么写,不过要注意格式:set
rs
=
Conn.execute("select
*
from
"&
mc)应该是这个样子的,不知道有没有记错,你试试看。
7. 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则可以拼接多个字符串。
8. sql语句中的字符串连接
那要看你使用的是什么样的SQL系统,如果使用的是标准的SQL,一般可以这样写:
update
char
set
name=concat(name,"abc")
where
id=1;
这里要注意的是:concat是标准的字符串连接函数,你要保证你name属性的数据类型是字符串型的,还有,根据你使用的系统,决定引用字符串时是使用单引号还是双引号;如果你使用的系统是MySQL,MSSQL或者其他的SQL,一般还有对应的更加简洁的表达式。
还有,在有的SQL系统里,你上面的表达式是可以使用的,只需把单引号换双引号即可。
答案补充
你用我给你些的标准SQL的代码,绝对没有错,我刚才PHPMYADMIN上执行了的,没有问题。如果你不信的话我可以发图。
9. sql语句拼接
在多种可变的查询条件下就需要SQL拼接了,比如
StringBuffer sql;
sql=new StringBuffer("SELECT * FROM 表名");
sql.append(" WHERE ");
if(条件1) sql.append(" 字段1='"+条件1+"' AND ");//字段和条件可以自己随意设定
if(条件2) sql.append(" 字段2='"+条件2+"' AND ");//
String finalSQL=sql.toString();
System.out.println(finalSQL);
System.out.println("最后AND位置 "+finalSQL.lastIndexOf(" AND "));
//因为AND拼在每一句最后面,所以有条件成立就肯定有AND 因此要去掉最有一个AND 否则没有AND的情况肯定是 没有任何条件成立 where也可以不要了
finalSQL=finalSQL.substring(0,finalSQL.lastIndexOf(" AND ")>0? finalSQL.lastIndexOf(" AND "):finalSQL.indexOf("WHERE"));
System.out.println(finalSQL);
*注:sql.append(" WHERE "); 就相当于 sql = sql + "where"
10. sql查询语句怎么拼接字符串
sql
=
"select
*
from"
&
mc
'怎么拼对吗?
这个是正确的。
set
rs
=
conn.execute("select
*
from
&
mc")
‘怎么拼接对吗?
这个是不对的。这个里面的sql语句建议赋值给一个变量,然后直接调用变量,当然也可以这么写,不过要注意格式:set
rs
=
conn.execute("select
*
from
"&
mc)应该是这个样子的,不知道有没有记错,你试试看。