sql字元串相加
① sql SERVER 字元串相加
declare @a1 varchar(20)
declare @a2 varchar(20)
set @a1='zz' set @a2='xx'
set @a1=@a1+@a2
print @a1
② sql 取字元串的值 並加一
不同的有不同方法的額,支持正則就很快,不支持就使用自定義函數實現。
正則方法(Oracle)
SELECT SUBSTR('WIN000018'
,1
,LENGTH('WIN000018') -
LENGTH(REGEXP_REPLACE('WIN000018', '[^0-9]+0+', ''))) ||
TO_CHAR(TO_NUMBER(REGEXP_REPLACE('WIN000018', '[^0-9]', '')) + 1)
FROM DUALCREATE
FUNCTION [dbo].[GET_NUMBER_ADD1](@P VARCHAR(100)) RETURNS VARCHAR(100)
AS
BEGIN
DECLARE @S NVARCHAR(100)
DECLARE @R NVARCHAR(100)
DECLARE @I INT
DECLARE @J INT
SET @I=LEN(@P)
SET @S = @P
WHILE PATINDEX('%[^0-9]%',@S) > 0
BEGIN
set @s=stuff(@s,patindex('%[^0-9]%',@s),1,'')
END
SET @J= convert(int,@s)+1
set @R=right('00000000'+convert(nvarchar,@j),len(@i))
set @R= left(@p,@i-len(@i))+@R
RETURN @R
END
--select GET_NUMBER_ADD1('WIN000018') from temp
③ SQL如何讓字元串與數值相加
您好,這樣寫,例表名為 table
update table set c = rtrim(a) + ltrim(str(b)) ;
兩個字元串連接用 『+』號,數值轉字元 str()函數,rtrim()去除後面空格,ltrim()去除前面空格
④ SQL怎麼把兩個欄位的字元相加成一個新欄位啊
因為你在convert時,沒有寫長度,所以默認為1,會只取一個值。
建議使用varchar(10)。
⑤ 請問SQL里怎麼從復雜的字元串提取數據進行SUM累加
問:這是sql嗎, 還是字元串處理??
這個可不是sql的強項,想這樣的字元串預處理要放到程序裡面,sql專門負責提取資料庫的數據
單純sql是無法處理的,至少要寫procere,做單字元匹配130+,找到截止位置時讀取字元直到預算符為止,然後吧讀取的欄位串保存為整數,在匹配下一個130+的結束位置繼續......
⑥ sql 字元串相加
先獲取資料庫的連接conn
String nameString;//存放名字字元串
int age;//存放年齡之和
String sql = "select * from tableName";
PreparedStatement pstm = conn.prepareStatement(sql);
ResultSet rs = pstm.executeQuery();
while(rs.next())
{
nameString+=rs.getString("name");
age+=rs.getInt("age");
}
⑦ SQl 字元串累加
利用自定義函數來完成
CREATE FUNCTION dbo.JoinStr
(
@倉庫 varchar(50),
@物料編碼 int
)
RETURNS varchar(500)
AS
BEGIN
declare @str varchar(8000)
set @str = ''
select @str = @str + 盤點票號 + ',' from 表 where 倉庫=@倉庫 and 物料編碼=@物料編碼
if @str<>'' set @str = left(@str, len(@str)-1)
return(@str)
END
GO
select 倉庫,物料編碼,dbo.JoinStr(倉庫,物料編碼) from 表 group by 倉庫,物料編碼
⑧ 怎麼用一個SQL語句將字元串累加
先將數字轉為字元串相加,SQL提供了相關函數; 代碼如下: UPDATE T_TABLE SET C= (A + STR(B) ) -- T_TABLE 表名!
⑨ SQL兩列字元串相加
CASR(A as int) + CAST(B AS INT) AS C 即可