當前位置:首頁 » 編程語言 » sqlserver轉數字
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sqlserver轉數字

發布時間: 2022-09-10 21:43:28

sql 中怎麼把字元串轉換為數字

具體方法如下:
將字元的數字轉成數字,比如'0'轉成0可以直接用加法來實現;
例如:將pony表中的d
進行排序,可d的定義為varchar,可以這樣解決;
select
*
from
pony
order
by
(d+0);
在進行ifnull處理時,比如
ifnull(a/b,'0')
這樣就會導致
a/b成了字元串,因此需要把'0'改成0,即可解決此困擾;
比較數字和varchar時,比如a=11,b="11ddddd";

select
11="11ddddd"相等;
若絕對比較可以這樣:
select
binary
11
=binary
"11ddddd";
字元集轉換
:
CONVERT(xxx
USING
gb2312);
類型轉換和SQL
Server一樣,就是類型參數有點點不同
:
CAST(xxx
AS
類型),CONVERT(xxx,類型);
類型必須用下列的類型:BINARY、CHAR()、DATE、TIME、DATETIME、DECIMAL、SIGNED、UNSIGNED。

② sqlServer怎麼把字元串'106,107'轉換成兩個數字106,107

答: sqlserver 封裝成標值函數即可

邏輯代碼:


DECLARE@indexint=1,@charindexint
DECLARE@Textvarchar(100)='106,107,109'
set@charindex=CHARINDEX(',',@Text)
WHILE(@charindex>0)
begin
selectSUBSTRING(@Text,@index,@charindex-@index)
set@index=@charindex+1
set@charindex=CHARINDEX(',',@Text,@index)
if(@charindex=0)selectSUBSTRING(@Text,@index,len(@Text))
end



希望能幫到你!

如有問題 可以追問,我當及時回答!

③ sql字元串轉化成數字

sqlserver:
select replace(ltrim(rtrim(phone)),' ','') as phone
from table group by replace(ltrim(rtrim(phone)),' ','')

④ sql server中的怎麼把數值型轉換為字元串

有兩種。

1.轉換(int,欄位名)

例如:選擇convert(int,'3')

選擇cast('3'作為int)

一般來說,沒有必要將字元串轉換為數字類型,如果你需要比較兩個欄位是相等的,但為字元串類型欄位,類型,用「=」來比較這兩個值是相等的,SQLSERVER將自動將字元串轉換為一個數字,然後比較。

(4)sqlserver轉數字擴展閱讀:

注意事項:

這兩個函數都執行強制轉換,但是語法不同。據說有一些不同的轉換,但我更習慣於使用轉換函數,它更像一個函數的語法一方面,可以指定的格式轉換,將時間和價值轉換為一個字元串。

對於數據類型的確切值,轉換後的字元串是我們存儲的值。如:

聲明@iintset@i=123456789print'test:'+轉換(varchar(20),@i)

輸出是:test:123456789

對於具有近似值的數據類型,情況就不那麼簡單了。

聲明@ifloatset@i=123456789print'test:'+轉換(varchar(20),@i):test:1.23457e+008

⑤ sqlserver 怎麼將字元串1-3,5-8轉換成1,2,3,5,6,7,8

cast(欄位名 as int) 例如:select cast('3' as int)
其實,一般情況下沒有必要把字元串轉換為數字類型
假如需要比較兩個欄位是否相等,但是一個欄位為字元串類型,一個為數字類型,用「=」比較兩個值是否相等時,SQL SERVER會自動把字元串轉換為數字再比較的

⑥ sqlserver2008 布爾類型強制轉換數字類型

--資料庫默認布爾類型是bit類型bit0或者1應可支持轉換數字類型
--使用CAST:CAST(expressionASdata_type)
--使用CONVERT:CONVERT(data_type[(length)],expression[,style])
selectconvert(int,欄位)或cast(欄位asint)

希望能幫到你!

以前回答案例,可參考下如:

參考:http://..com/question/586478323

⑦ SQL中怎麼取出字元串中某兩個字元,並轉換為數字

select
*
from
tablename
where
欄位名
in
('aa')
這個就是用到了in關鍵字,同樣的還有not
in關鍵字查詢的便是不包含某字元串的結果。
如果需要判斷是否在,如果在(或者不在)需要返回值的話,用is
null關鍵字加一個判斷,判斷一下就可以了。

⑧ sqlserver時間轉毫秒值,就是一串數字的那種。

???

時間戳格式?

SELECTCAST('2014-01-01'ASTIMESTAMP)

要這樣的?

⑨ SQLSERVER數據轉換問題

Test_OldTable是包含19990101等nvarchar數據類型的表
Test_NewTable是包含DateTime數據類型的表

sql語句:
INSERT INTO Test_NewTable(NewDate)
SELECT CAST(OldDate AS DateTime)
FROM Test_OldTable

在查詢分析器中執行得到的結果是正確的。其他方法也可以的。

⑩ sqlserver存儲過程中 如何把表變數轉換成數值

直接將表名也改為varchar(50) 就行了
要不你就用預執行

if exists(select * from sysobjects where name='proc_select')
drop proc proc_select
go
create proc proc_select
@table varchar(50)
as
declare @sql varchar(8000)
set @sql='select * from '+@table
exec(@sql)
go

exec proc_select 'Types'