㈠ sql 中怎麼把字元串轉換為數字
可以使用函數:ISNUMERIC
當輸入表達式得數為一個有效的整數、浮點數、money 或 decimal 類型,那麼 ISNUMERIC 返回 1;否則返回 0。返回值為 1 確保可以將 expression 轉換為上述數字類型中的一種。
將字元的數字轉成數字,比如'0'轉成0可以直接用加法來實現;
若絕對比較可以這樣:
select binary 11 =binary "11ddddd";
字元集轉換:CONVERT(xxx USING gb2312);
類型轉換和SQL Server一樣,就是類型參數有點點不同 : CAST(xxx AS 類型),CONVERT(xxx,類型);
類型必須用下列的類型:BINARY、CHAR()、DATE、TIME、DATETIME、DECIMAL、SIGNED、UNSIGNED。
數據類型:
字元串數據類型是建模在形式字元串的想法上的數據類型。字元串是幾乎在所有編程語言中可以實現的非常重要和有用的數據類型。在某些語言中它們可作為基本類型獲得,在另一些語言中做為復合類型獲得。多數高級語言的語法允許通常用某種方式引用起來的字元串來表示字元串數據類型的實例;這種元字元串叫做「文本」或「字元串文本」。
以上內容參考:網路-字元串
㈡ SQL如何用語句更改欄位的數據類型
SQL如何用語句更改欄位可以用以下語句可以實現:
altertable表名altercolumn欄位名變更後的欄位類型。
注意:
但若是關鍵欄位,帶有主鍵,並且欄位類型為用戶自定義類型,具有默認值的情況下,用上述語句會出現錯誤。
例如:
現假設表為TABLE1,關鍵欄位為FIELD1,主鍵為PK_FIELD1,關鍵欄位的數據類型為用戶自定義數據類型cha_field1,實際為CHAR(10),默認值為dbo.D_field1現要求將欄位類型改為varchar(20),默認值去除錯誤提示如下:
伺服器:消息5074,級別16,狀態1,行1
對象'D_field1'依賴於列'field1'。
伺服器:消息5074,級別16,狀態1,行1
對象'PK_field1'依賴於列'field1'。
伺服器:消息4922,級別16,狀態1,行1
ALTERTABLEALTERCOLUMNfield1失敗,因為有一個或多個對象訪問此列。
㈢ sql語句中怎樣將字元類型轉換成數字類型
先檢查金額列的數據是否都符合小數規范,轉為數字格式只有是數字的字元串才能轉,如000012轉為12,.55轉為0.55,若是個英文符號等字元轉了就報無效數字類型的錯。
㈣ 在SQL語句里怎麼轉換數據類型
ALTER TABLE 表名 ALTER COLUMN 列名 新的數據類型[(長度)] NULL或NOT NULL
例:ALTER TABLE 教師 ALTER COLUMN 辦公室 CHAR(20) NOT NULL default "辦公室"
把寫好的句子放到執行其他sql語句的地方比如EXEcute(sql)這樣的地方,執行一次就行,然後改回來。
㈤ sql語句中如何將字元類型轉換成數字類型
先檢查金額列的數據是否都符合小數規范,轉為數字格式只有是數字的字元串才能轉,如000012轉為12,.55轉為0.55,若是個英文符號等字元轉了就報無效數字類型的錯。
㈥ 在SQL語句裡面如何將字元型轉換成數字型
先檢查金額列的數據是否都符合小數規范,用cast(金額 asdecimal(10,4))>500或者
convert(decimal(10,4),金額)>500
註:decimal的長度和小數位數根據自己需要設定
sql中將字元串數字轉換成數字:
方法一:SELECT CAST('123' AS SIGNEDinteger);
方法二:SELECT CONVERT('123',SIGNED);
方法三:SELECT '123'+0;
(6)sql數據類型怎麼改為數據擴展閱讀:
能將字元型轉換成數字型,就能將數字轉化為字元,對於精確數值的數據類型,轉換出來的字元串就是我們存儲的數值。比如:
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
㈦ SQL中如何改變一列的數據類型
你可以使用
ALTER
TABLE
加
ALTER
COLUMN
來更改指定的列數據類型,如:
CREATE
TABLE
myTest
(fId
int,fName
nvarchar(20)
null)
創建一個表,名為:myTest,包含兩個欄位。如果此時你想要更改
fName
列,那麼可以使用以下語句:
ALTER
TABLE
myTest
ALTER
COLUMN
fName
nvarchar(30)
null
這里要注意,如果指定的新的數據類型長度比原來的數據類型小,那麼會出現數據丟失的情況,所以千萬要注意,另外,不是所有的數據類型都可以更改,以下是SQL聯機叢書中提到的注意事項:
要更改的列不能是:
·數據類型為
text、image、ntext
或
timestamp
的列。
·表的
ROWGUIDCOL
列。
·計算列或用於計算列中的列。
·被復制列。
·用在索引中的列,除非該列數據類型是
varchar、nvarchar
或
varbinary,數據類型沒有更改,而且新列大小等於或者大於舊列大小。
·用在由
CREATE
STATISTICS
語句創建的統計中的列。首先用
DROP
STATISTICS
語句刪除統計。由查詢優化器自動生成的統計會由
ALTER
COLUMN
自動除去。
·用在
PRIMARY
KEY
或
[FOREIGN
KEY]
REFERENCES
約束中的列。
用在
CHECK
或
UNIQUE
約束中的列,除非用在
CHECK
或
UNIQUE
約束中的可變長度列的長度允許更改。
·有相關聯的默認值的列,除非在不更改數據類型的情況下允許更改列的長度、精度或小數位數。
㈧ sql 語句中的數據類型轉換
select
top
8
*
from
list
where
CONVERT(datediff(d,mtitle,"&date()&"))
<myouxiao
order
by
[reads]
desc,mid
desc
datediff的datepart不用加引號的,Sql可以自動識別
哈哈,你的Convert沒有指定要轉換成的數據類型
CONVERT
(data_type[(length)],
expression
[,
style])
so:
select
top
8
*
from
list
where
CONVERT(int,datediff(d,mtitle,"&date()&"))
<myouxiao
order
by
[reads]
desc,mid
desc
數據類型要和myouxiao一樣,我寫的是int
㈨ 如何用SQL語句將表格中的tn欄位的數據類型修改為char(8)
alter table change column tn char(8);這樣就可以修改欄位類型了,還可以設置欄位是否為空,是否有默認值,以及欄位注釋。
㈩ 在sql語句里怎麼轉數據類型
alter
table
表名
alter
column
列名
新的數據類型[(長度)]
null或not
null
例:alter
table
教師
alter
column
辦公室
char(20)
not
null
default
"辦公室"
把寫好的句子放到執行其他sql語句的地方比如execute(sql)這樣的地方,執行一次就行,然後改回來。