❶ sql2005字符串类型的编号如何写SQL语句
insert into zhaobiao
select 'ZB'+replace(convert(varchar(10),getdate(),120),'-','')+ right('00'+convert(varchar,convert(int,right(isnull(max(zbId),0),3))+1),3) from zhaobiao
直接用这段应该能直接在表里插入招标ID
❷ 【数据库】求把某个字符串写入某个表中的某一行的sql语句
insert to tableName (columnName,....)values(value1,....)
❸ pl/sql中连接字符串应该怎么写,在线等待
和其他数据库系统类似,Oracle字符串连接使用“||”进行字符串拼接,其使用方式和MSSQLServer中的加号“+”一样。
比如执行下面的SQL语句:
代码如下:
SELECT '工号为'||FNumber||'的员工姓名为'||FName FROM T_Employee
WHERE FName IS NOT NULL
除了“||”,Oracle还支持使用CONCAT()函数进行字符串拼接,比如执行下面的SQL语句:
SELECT CONCAT('工号:',FNumber) FROM T_Employee
如果CONCAT中连接的值不是字符串,Oracle会尝试将其转换为字符串,比如执行下面的SQL语句:
SELECT CONCAT('年龄:',FAge) FROM T_Employee
与MYSQL的CONCAT()函数不同,Oracle的CONCAT()函数只支持两个参数,不支持两个以上字符串的拼接,比如下面的SQL语句在Oracle中是错误的:
SELECT CONCAT('工号为',FNumber,'的员工姓名为',FName) FROM T_Employee
WHERE FName IS NOT NULL
运行以后Oracle会报出下面的错误信息:
参数个数无效
如果要进行多个字符串的拼接的话,可以使用多个CONCAT()函数嵌套使用,上面的SQL可以如下改写:
代码如下:
SELECT CONCAT(CONCAT(CONCAT('工号为',FNumber),'的员工姓名为'),FName) FROM
T_Employee
WHERE FName IS NOT NULL
❹ 怎样把一个字符串写到MSSQL数据库里,特别说明:保存格式必须是binary
在.net程序里,页面后台提供一个参数:
@b,类型是string。
然后在存储过程里处理就行了:
……
@b varchar(64)
……
//对这个参数做转换:
DECLARE @a binary(16)
set @a = CONVERT(binary(16),@b);
然后就可以写入了。
❺ 截取一个字符串的最后6位sql语句怎么写
看了一下回答,我还是说几句吧,希望有所帮助。 对SQl字符串的截取现在有两种方法, 一种是:用right函数。 如果你的字符串已经读取到的话,假如放在strings自己定义的变量里面就可以用:select right('strings',4) 此函数返回的结果是,字符串strings的最后四位,如果strings不足四位或刚好四位,则全部返回。 如果你的字符串是从表中读取出来的话,可以先定义一个变量declare @string 把查询出的字符串赋值过去,使用:select right('@string',4),就可以了,理解同上。 另一种是:用substring函数 select substring('1234567',len('1234567')-4,4) 返回的结果是:‘4567’ 或用上面的自定义变量才存储查询出来的字符串。小小一例:godeclare @string char(10)set @string='1234567' ----可以是一条sql语句,返回的结果是一个字符串select substring('1234567',len('1234567')-4,4)go应该清楚了吧? ^_^ 要是有什么不清楚的,随时Hi我 相互学习!
❻ 如果数据库名字是字符串变量该怎么写SQL语句
DECLARE @strtablename VARCHAR(10)
DECLARE @strDBname VARCHAR(20)
SET @strtablename = 'A'
SET @strDBname = 'Test'
PRINT('SELECT * FROM '+ @strDBname+'.dbo.' + @strtablename)
EXEC( 'SELECT * FROM '+ @strDBname+'.dbo.' + @strtablename)
❼ 数字转字符串,如何写sql
num1是主键,类型是int,num2是外键,类型是text, num2中可以是多个值也可以使一个值,如num2中一列有4个值(1,2,3,4),num1中分别有4列值为1,2,3,4,要num1和num2比较,num1=num2,如何把num2转换为单独的1,2,3,4
我要查询,select * from table1,table2 where num1=num2 那num1=num2这块怎么写啊,num1是4个值,num2是一个值,查出来的结果也是4个值的
❽ 各位老师:在sql中下面字符串应该怎么处理sql语句应该怎么写
--用CTE递归分解:
withtmp(col)as
(select'张三三,李斯,王武武,李六六六'),
royAS
(SELECTcol=
CAST(LEFT(col,CHARINDEX(',',col+',')-1)ASNVARCHAR(100)),
Split=CAST(STUFF(col+',',1,CHARINDEX(',',col+','),'')AS
NVARCHAR(100))
fromtmp
UNIONALL
SELECTcol=CAST(LEFT(Split,CHARINDEX(',',Split)-1)ASNVARCHAR(100)),
Split=
CAST(STUFF(Split,1,CHARINDEX(',',Split),'')ASNVARCHAR(100))
FROMRoy
WHEREsplit>'')
selectcolfromroy
❾ 基于C#的ASP.NET如何将一个字符串写入sql server数据库中 binary(16)字段
private void button1_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection(strConnection);//strConnection为连接串自己写
byte[] binaryData = System.IO.File.ReadAllBytes("my.jpg");
//要存入的二进制数据,这里读出的是D:\\my.jpg图片的二进制数据
SqlCommand cmd = conn.CreateCommand();
//建立数据库连接
cmd.CommandText = "INSERT INTO Test (binaryData, SubTitle)"
+ " values ( @binaryData, @SubTitle)";
//要插入的值用占位符代替,其中@binaryData这样的就是占位符,就是这样写的,无论在什么语言中(好像是PLSQL里面就要这么写)
conn.Open();
cmd.Parameters.Add("@binaryData", SqlDbType.Binary, 100);
//设置占位符的数据类型SqlDbType类中包含了各种sqlsver的数据类型
//Add方法有多种重载,写法不唯一
cmd.Parameters.Add("@SubTitle", SqlDbType.NVarChar, 50);
cmd.Parameters["@binaryData"].value = binaryData;
cmd.Parameters["@SubTitle"].value=“字符串”
try
{
cmd.ExecuteNonQuery();//执行SQL语句
}
catch (Exception ex)
{
//输出异常
}
finally
{
conn.Close();
}
}
❿ 通过sql用结果集替换字符串中的对应值,怎么写sql
通过sql用结果集替换字符串中的对应值,怎么写sql
用replace函数将年,月替换成横杠,日替换成空,从而形成tb的标准日志格式,然后再做比较。这里给出replace的示例:
select
replace(replace(REPLACE('2017年01月01日',
'年',
'-'),
'月',
'-'),
'日',
'')
注:
此replace函数在SQL
Server数据库上适用,其他数据库可能要做相应调整。