A. sql中CHAR後面的數字可以隨便寫嗎
一樓的說法不太准確.
1.char和varchar各有優缺點.char是定長,實際長度超過指定長度是,右邊被截去,不足時右邊補空格;varchar是變長,數字表示允許的最大長度,在儲存時用另外一個位元組來保存實際的長度.
2.一般來說,char確實會導致一定的儲存空間浪費,但在進行數據操作的時候速度更快;varchar雖然能節省儲存空間,但很多操作多每次要去查詢欄位的實際長度,這會導致數據操作速度變慢.
4.char和varchar各有用途.在已知欄位長度的情況下(比如學號欄位,一般每個學生的學號長度是固定一樣的),可以用char類型,既不會浪費空間,有不會拖慢速度.如果欄位的長度是不確定,這是是用char還是varchar就需要考慮一下了.比如,中國人的名字一般是兩個/三個或者四個字,最多五個字,如果你的資料庫對自個欄位的操作特別多的話,你也可以考慮將個欄位設為char(5).因為現在寸寸設備的價格已經很便宜了,而用戶對系統的相應速度要求比較高,用空間換時間.
5.說到底,這還是一個空間與速度之間取哪個的問題,這要結合實際情況具體分析.
B. sql2008 如何只取小數點後面的數字
select '0.'+substring((cast(欄位名 as varchar)),charindex('.',cast(欄位名 as varchar))+1,len(欄位名)-charindex('.',cast(欄位名 as varchar))) from 表名
表名,欄位名替換成你資料庫里對應的名字即可
貌似這樣也可以啊
select 欄位名-floor(欄位名) from 表名
不過前邊的0不顯示了,需要cast 轉換一下並且前邊加上0
C. sql中怎麼去截取一個冒號後面的一串數字
sql中怎麼去截取一個冒號後面的一串數字?1、首先在桌面上,點擊「Management Studio」圖標。
2、之後在該界面中,點擊左上角「新建查詢」選項。
3、接著在該界面中,輸入截取指定欄位某一個字元出現後的後面的字元串的sql語句「
select substring(name,charindex(',',name)+1,len(name)-charindex(',',name)) from test2;」。
4、然後在該界面中,點擊左上方「執行」按鈕。
5、最後在該界面中,顯示截取指定欄位某一個字元出現後的後面的字元串成功
D. SQL 查詢一列中,數字字元串中,最後一個數字欄位的簡單語句
結論:作為補充,我們使用MySQL字元串操作函數進行篩選。
like
只要是字元串操作函數,可達到篩選目的的一般均可使用。
但是查詢性能需視情況而定。
以上。
E. sql 如何顯示特定欄位後的數字
oracle:
select substr(A, instr(A,'-')+1, instr(A,'-',1,2)-instr(A,'-')-1 ) from 表
或者
select substr(A, instr(A,'-')+1, 1) from 表
F. sql建表要求number後面括弧裡面的數字比如下圖10和2代表什麼
這是Oracle吧。
number(10,2) 表示數字類型 總共10位數,其中2位小數;(8位整數)。
number(m,n) 可以認為與sql標準的decimal(m,n)類型兼容。
G. 資料庫怎樣用sql語句查詢欄位最後面的小數點後面的數字
select reverse(substring(reverse(欄位),0,CHARINDEX('0',reverse(欄位)))) from 表名 where 條件
select reverse(substring(reverse('123.231.22.33'),0,CHARINDEX('0',reverse('123.231.22.33
')))) from 表
reverse() 反轉
substring() 截取 參數1 表示要截取的字元 參數2 表示從那裡截取 參數3 表示截取多少位
charindex() 查找 參數1 表示要查找的字元 參數2 表示從哪個字元串中查找
要截取最後一個點的位置後面的數 由於沒有截取最後一個的函數 我們不妨先將字元串反轉 從而找到第一個點的位置 截取的時候 我們也反轉一下 那麼最後得到截取的字元串也是被反轉的 所以最後我們也要再反轉成我們想要的值
H. SQL中的小數點後的輸入位數.
1、用函數 ROUND(數值,s) ,其中 s 表示 小數位數。
例:SELECT ROUND(4.994,2) 返回 4.990。
2、用函數 CAST(數值 as numeric(n,s)),其中n表示有效數字位數,s表示小數位數。
例:SELECT CAST(4.994 as numeric(10,2)) 返回 4.99。
3、用函數 CONVERT(numeric(n,s),數值),其中n表示有效數字位數,s表示小數位數。
例: SELECT CONVERT(numeric(10,2),4.985) 返回 4.99。
其運用的函數是函數 TRUNC。而trunc函數的功能和函數INT類似,是截取日期或數字,返回指定的值。函數trunc直接去除數字的小數部分,而函數INT則是向下舍入到最接近的整數。
(8)sql後面數字擴展閱讀
TRUNC(for number)語法格式:TRUNC(number,[decimals])
其中:
number 待做截取處理的數值。
decimals 指明需保留小數點後面的位數。可選項,忽略它則截去所有的小數部分。
trunc函數 turnc(x,y)如果y是負數,則對x在小數點左邊的第|y|位處進行截斷。
例如:TRUNC(5.75, -1)=0;
看成 0005.75.000 從小數點左邊第一位往左邊截,是0。
下面是該函數的使用情況:
TRUNC(89.985,2)=89.98
TRUNC(89.985)=89
TRUNC(89.985,-1)=80
注意:第二個參數可以為負數,表示為小數點左邊指定位數後面的部分截去,即均以0記。與取整類似,比如參數為1即取整到十分位,如果是-1,則是取整到十位,以此類推。
I. sql當中int後面的括弧當中的數代表什麼意思
在sql語言裡面,基本數據類型包括:數值型、字元型、日期型、大文本型;其中int是數值型裡面的整數類型。在建表的時候使用int來表示一個整型的屬性; 而int(10)則表示長度最長為10位的整型屬性; 帶括弧和不帶括弧主要是對最大長度的限制不同。
J. sql語句select 後面直接加數字是做什麼
如果是非欄位的話 也就是說數字或者是字元串 可以代替欄位輸出
比如
table表裡面有 f1,f2,f3 3個欄位 你只想獲取F3欄位的值 而 還想查詢出來有3個欄位顯示那麼就
SELECT 1, 2, f3 FROM table
他輸出就是1,2 和F3欄位的值
SELECT 就是輸出語句 FROM才是針對表
SELECT 1,2,3
照樣可以執行