1. sql語句中 數據類型轉換 string to int
oracle: to_number(str)
sqlserver: convert(int,欄位名)
2. mysql中int型的數字怎麼轉換成字元串
MySQL 數字類型轉換函數(concat/cast)。
1、將Int 轉為varchar經常用 concat函數,比如concat(8,』0′) 得到字元串 』80′。
2、將varchar 轉為Int 用 cast(a as signed) a為varchar類型的字元串。
總結:類型轉換和SQL Server一樣,就是類型參數有點點不同 : CAST(xxx AS 類型) , CONVERT(xxx,類型)。
(2)sqlint轉字元串擴展閱讀:
可用的類型:
二進制,同帶binary前綴的效果 : BINARY
字元型,可帶參數 : CHAR()
日期 : DATE
時間: TIME
日期時間型 : DATETIME
浮點數 : DECIMAL
整數 : SIGNED
無符號整數 : UNSIGNED
cast函數運行示例
3. sql語句將1,2,3字元串轉換為int類型
創建一個函數,把字元串變成表格
CREATE FUNCTION fn_StringSplitTable
(
@str NVARCHAR(MAX),
@split NVARCHAR(10)
)
RETURNS TABLE
AS
RETURN
(
SELECT B.id
FROM
(
SELECT [value] = CONVERT(XML , '<v>' + REPLACE(@str , @split , '</v><v>') + '</v>')
) A
OUTER APPLY
(
SELECT id = N.v.value('.' , 'nvarchar(100)')
FROM A.[value].nodes('/v') N ( v )
) B
)
Go
查詢可以為
select * from tb where id IN (SELECT CAST(id AS INT) FROM dbo.fn_StringSplitTable('1,2,3', ','))
4. 如何用SQL語句實現String轉化為int,如下是一個String類型
select Convert(int,'4321') --將4321 轉化為int
select Convert(int,isnull(num,0)) --將欄位 num 轉化為int
希望能夠採納
5. 在sql裡面String轉int(相互)~~~~要詳細描述
用convert方法:
欄位A int
欄位B varchar(10)
則 convert(varchar(10),欄位A)將返回A的varchar類型
同理 convert(int,欄位B)將返回B的int型
Example:
// stoi example
#include <iostream> // std::cout
#include <string> // std::string, std::stoi
(此處空一行)
int main ()
{
std::string str_dec = "2001, A Space Odyssey";
std::string str_hex = "40c3";
std::string str_bin = "-10010110001";
std::string str_auto = "0x7f";
(此處空一行)
std::string::size_type sz; // alias of size_t
int i_dec = std::stoi (str_dec,&sz);
int i_hex = std::stoi (str_hex,nullptr,16);
int i_bin = std::stoi (str_bin,nullptr,2);
int i_auto = std::stoi (str_auto,nullptr,0);
(此處空一行)
std::cout << str_dec << ": " << i_dec << " and [" << str_dec.substr(sz) << "] ";
std::cout << str_hex << ": " << i_hex << ' ';
std::cout << str_bin << ": " << i_bin << ' ';
std::cout << str_auto << ": " << i_auto << ' ';
(此處空一行)
return 0;
}
(5)sqlint轉字元串擴展閱讀:
幾種轉換成 int 類型的方式總結
1、 (int)變數名[強制類型轉換]:
這種方式主要用於數字類型之間的轉換,從int類型到long,float,double,decimal類型,可以使用隱式轉換,但是從long類型到int類型就需要使用顯式轉換,也就是該數據類型轉換方式,否則會產生編譯錯誤。
2、int.Parse(string類型變數名)
這種方式是將數字內容的字元串轉為int類型,如果字元串內容為空或者null時,如果字元串內容不是數字,如果字元串內容所表示數字超出int類型可表示的范圍,都拋出異常。
使用該方法切忌的一點就是只能處理字元串內容,而且字元串內容只能在int類型可表示的范圍之內。
6. sql 2008 中,將int數據類型如何轉換為string
SQL Server 中的字元串是用char,nchar,varchar,nvarchar等數據類型來實現的。
將int數據類型如何轉換為字元串可以用如下任意一種方式:
declare @num int
set @num = 1
-- 方式1:
select CONVERT(varchar(10),@num)
-- 或者方式2
select CAST(@num as varchar(10))
7. 如何在SQL中把int轉為string-CSDN論壇
select convert(char(20), id) as stringID
8. Sql中有沒有把字元串轉換成int數值類型
直接用 cast('1' as integer)
PostgreSQL中直接使用轉換符號::(連續兩個冒號)就可以實現類型的強制轉換。
可以使用函數:ISNUMERIC;當輸入表達式得數為一個有效的整數、浮點數、money 或 decimal 類型,那麼 ISNUMERIC 返回 1;否則返回 0。返回值為 1 確保可以將 expression 轉換為上述數字類型中的一種。
串接子串
「串接」是 Σ* 上的重要二元運算。對於 Σ* 中的兩個字元串 s 和 t,它們的串接被定義為在 s 中的字元序列之後跟隨著 t 中的字元序列,並被指示為 st。例如,Σ = {a, b, …, z},並且 s = bear 且 t = hug,則 st = bearhug 而 ts = hugbear。
字元串串接是結合性的,但非交換性運算。空串充當單位;對於任何字元串 s,有 εs = sε = s。所以,集合 Σ* 和串接運算形成了幺半群,就是從 Σ 生成的自由幺半群。此外,長度函數定義從 Σ* 到非負整數的幺半群同態。
以上內容參考:網路-字元串
9. 怎麼將sql server 語句中integer類型轉換成string
SQL Server中的數值類型分為兩種,一種是精確的數值類型,具體的數據類型有:
bit、tinyint、smallint、int、bigint、smallmoney、money和decimal,這些數據類型能夠精確的表明某以數值;
另一種是近似的數值類型,具體就是float和real。
浮點數據為近似值,因此,並非數據類型範圍內的所有值都能精確地表示。
有些時候需要將這些數值類型轉換為字元串類型,用到的轉換函數就是cast和convert,這兩個函數的作用都是進行類型轉換,只不過語法格式不同。
對於精確數值的數據類型,轉換出來的字元串就是存儲的數值,比如:
declare @i int
set @i=123456789
print 'test:'+convert(varchar(20),@i)
輸出就是:test:123456789
而如果對於近似數值的數據類型,那麼可就沒有那麼簡單了。
declare @i float
set @i=123456789
print 'test:'+convert(varchar(20),@i)
輸出結果:test:1.23457e+008
輸出的結果是使用科學計數法來表示的,再看看可否通過指定轉換樣式來指定不使用科學計數法呢?幫助文檔中說到float 或 real 轉換為字元數據時的 style 值:
0(默認值)最大為 6 位數。根據需要使用科學記數法。
1 始終為 8 位值。始終使用科學記數法。
2 始終為 16 位值。始終使用科學記數法。
值是123456789,超過了6位數.所以不管是0還是1,2結果都會使用科學計數法來表示。
那麼要怎麼樣才能將我們的數據不轉換成科學計數法而輸出呢?比較簡單的辦法就是將近似數據轉換為精確數據,然後再將精確數據轉換成字元串。
同樣以上面的例子為例, 進行兩次數據類型的轉換如下:
declare @i float
set @i=123456789
print 'test:'+convert(varchar(20),convert(int,@i))
輸出:test:123456789如果是有小數,那麼我們要轉換出小數位的話,可以轉換成decimal,轉換出的小數位數在定義decimal時指定。
比如要輸出4位小數,那麼轉換代碼是:
declare @i float
set @i=123456789.12
print 'test:'+convert(varchar(20),convert(decimal(18,4),@i))
輸出:test:123456789.1200