① sql 數據類型轉換
convert(要轉換成的數據類型,欄位名稱
譬如
convert(varchar(100),col_name)
② SQL 類型轉換及數據求和:
類型轉換有兩種方法:
sum(cast(num as int))
sum(convert(int,num))
轉換時要考慮到數據大小 防止數據過大溢出
③ sql求解,dtype=BSP,早8點到當前求和。當前系統時間小於8點,應從前一天8點開始求和,取欄位avg
表名換成你自己的,一共1處
然後前邊b.fromtime和b.totime 以及後邊的group by b.fromtime和b.totime 是給你做測試用的,看看時間區間取的對不對
括弧里那一堆,是我用來計算時間區間,看在哪個時間段取值用的,你可以把括弧里的拿出來單獨跑一下,看看結果
select b.fromtime,b.totime,sum(a.avgv)
from 表名 a,
(select 1 id,to_date(to_char(sysdate,'yyyy-mm-dd'),'yyyy-mm-dd')-2/3 fromtime,to_date(to_char(sysdate,'yyyy-mm-dd'),'yyyy-mm-dd')+1/3 totime from al
union all
select 2 id,to_date(to_char(sysdate,'yyyy-mm-dd'),'yyyy-mm-dd')+1/3 fromtime,sysdate totime from al) b
where a.tm >fromtime and a.tm<=b.totime
and sysdate >fromtime and sysdate<=b.totime
and a.dtype='BSP'
group by b.fromtime,b.totime
④ 求SQL常用數據類型轉換函數
sql中用convert這個函數進行數據類型轉換
1.CONVERT()
函數可以用不同的格式顯示日期/時間數據。
CONVERT(data_type(length),data_to_be_converted,style)
style:
100
或者
0
mon
dd
yyyy
hh:miAM
(或者
PM)
101
mm/dd/yy
102
yy.mm.dd
103
dd/mm/yy
104
dd.mm.yy
105
dd-mm-yy
106
dd
mon
yy
107
Mon
dd,
yy
108
hh:mm:ss
109
或者
9
mon
dd
yyyy
hh:mi:ss:mmmAM(或者
PM)
110
mm-dd-yy
111
yy/mm/dd
112
yymmdd
113
或者
13
dd
mon
yyyy
hh:mm:ss:mmm(24h)
114
hh:mi:ss:mmm(24h)
120
或者
20
yyyy-mm-dd
hh:mi:ss(24h)
121
或者
21
yyyy-mm-dd
hh:mi:ss.mmm(24h)
126
yyyy-mm-ddThh:mm:ss.mmm(沒有空格)
130
dd
mon
yyyy
hh:mi:ss:mmmAM
131
dd/mm/yy
hh:mi:ss:mmmAM
例子:CONVERT(VARCHAR(10),GETDATE(),110)
2.CONVERT()
函數是把數據類型間的轉換
例子:select
CONVERT(int,'10')
⑤ mysql中如何插入date日期型數值
解決方案一:
日期前面的符號換為逗號
日期可以用mysql的方法todate
解決方案二:
MySQL 插入數據 date 格式
mysql插入date類型的值
mysql插入date類型的值
解決方案三:
nsert into table (date) values ('to_date('2009-06-08 23:53:17','YYYY-DD-MM HH:MI:SS'),'
解決方案四:
資料庫中日期欄位設置datetime類型 然後就可以插入對應字元串
拓展資料
MySQL是一個關系型資料庫管理系統,由瑞典MySQL AB 公司開發,目前屬於Oracle旗下產品。MySQL 最流行的關系型資料庫管理系統,在 WEB 應用方面MySQL是最好的 RDBMS (Relational Database Management System,關系資料庫管理系統) 應用軟體之一。
MySQL是一種關聯資料庫管理系統,關聯資料庫將數據保存在不同的表中,而不是將所有數據放在一個大倉庫內,這樣就增加了速度並提高了靈活性。
⑥ 資料庫表中的圖片是什麼類型
資料庫表中的圖片是image類型。
資料庫表中的Image數據類型可以進行數據圖片的存儲。保存的是二進制位元組,所以寫入資料庫Image數據類型時,資料庫自動將圖片轉換成二進制位元組後存入。從資料庫Image數據類型讀取內容時,則是將二進制位元組先轉換成圖片,再輸出。
(6)tosqldtype擴展閱讀:
如果SQL Server是預設安裝時, IMAGE類型欄位是有長度限制,用來存儲圖片大小不超過2g的圖片。缺點是佔用了很大的數據存儲空間。但是對於之前的存儲物理路徑來說讀取圖片和存儲圖片方便了很多。
IMAGE類型欄位如果寫入的數據超過長度限制就會拋出異常,預設的長度限制是65536,需要修改資料庫的全局配置參數才可以擴大IMAGE類型欄位的存儲空間。
⑦ SQL中數據類型有哪些
int 整型 int 數據類型可以存儲從- 231(-2147483648)到231 (2147483 647)之間的整數。存儲到資料庫的幾乎所有數值型的數據都可以用這種數據類型。這種數據類型在資料庫里佔用4個位元組
tinyint 整型 tinyint 數據類型能存儲從0到255 之間的整數。它在你只打算存儲有限數目的數值時很有用。 這種數據類型在資料庫中佔用1 個位元組
float 近似數值型 float 數據類型是一種近似數值類型,供浮點數使用。說浮點數是近似的,是因為在其范圍內不是所有的數都能精確表示。浮點數可以是從-1.79E+308到1.79E+308 之間的任意數
bit 整型 bit 數據類型是整型,其值只能是0、1或空值。這種數據類型用於存儲只有兩種可能值的數據,如Yes 或No、True 或Fa lse 、On 或Off
char 字元型 char數據類型用來存儲指定長度的定長非統一編碼型的數據。當定義一列為此類型時,你必須指定列長。當你總能知道要存儲的數據的長度時,此數據類型很有用。例如,當你按郵政編碼加4個字元格式來存儲數據時,你知道總要用到10個字元。此數據類型的列寬最大為8000 個字元
varchar 字元型 varchar數據類型,同char類型一樣,用來存儲非統一編碼型字元數據。與char 型不一樣,此數據類型為變長。當定義一列為該數據類型時,你要指定該列的最大長度。 它與char數據類型最大的區別是,存儲的長度不是列長,而是數據的長度
nchar 統一編碼字元型 nchar 數據類型用來存儲定長統一編碼字元型數據。統一編碼用雙位元組結構來存儲每個字元,而不是用單位元組(普通文本中的情況)。它允許大量的擴展字元。此數據類型能存儲4000種字元,使用的位元組空間上增加了一倍
nvarchar 統一編碼字元型 nvarchar 數據類型用作變長的統一編碼字元型數據。此數據類型能存儲4000種字元,使用的位元組空間增加了一倍
text 字元型 text 數據類型用來存儲大量的非統一編碼型字元數據。這種數據類型最多可以有231-1或20億個字元
datetime 日期時間型 datetime數據類型用來表示日期和時間。這種數據類型存儲從1753年1月1日到9999年12月3 1日間所有的日期和時間數據, 精確到三百分之一秒或3.33毫秒
Smalldatetime 日期時間型 smalldatetime 數據類型用來表示從1900年1月1日到2079年6月6日間的日期和時間,精確到一分鍾
image 二進制數據類型 image 數據類型用來存儲變長的二進制數據,最大可達231-1或大約20億位元組
基本查詢
select column1,columns2,...
from table_name
說明:把table_name 的特定欄位資料全部列出來
select *
from table_name
where column1 = ***
[and column2 > yyy] [or column3 <> zzz]
說明:
1.'*'表示全部的欄位都列出來。
2.where 之後是接條件式,把符合條件的資料列出來。
select column1,column2
from table_name
order by column2 [desc]
說明:order by 是指定以某個欄位做排序,[desc]是指從大到小排列,若沒有指明,則是從小到大
排列
組合查詢
組合查詢是指所查詢得資料來源並不只有單一的表格,而是聯合一個以上的
表格才能夠得到結果的。
select *
from table1,table2
where table1.colum1=table2.column1
說明:
1.查詢兩個表格中其中 column1 值相同的資料。
2.當然兩個表格相互比較的欄位,其資料形態必須相同。
3.一個復雜的查詢其動用到的表格可能會很多個。
整合性的查詢:
select count (*)
from table_name
where column_name = ***
說明:
查詢符合條件的資料共有幾筆。
select sum(column1)
from table_name
說明:
1.計算出總和,所選的欄位必須是可數的數字形態。
2.除此以外還有 avg() 是計算平均、max()、min()計算最大最小值的整合性查詢。
select column1,avg(column2)
from table_name
group by column1
having avg(column2) > ***
說明:
1.group by: 以column1 為一組計算 column2 的平均值必須和 avg、sum等整合性查詢的關鍵字
一起使用。
2.having : 必須和 group by 一起使用作為整合性的限制。
復合性的查詢
select *
from table_name1
where exists (
select *<BR>from table_name2
where conditions )
說明:
1.where 的 conditions 可以是另外一個的 query。
2.exists 在此是指存在與否。
select *
from table_name1
where column1 in (
select column1
from table_name2
where conditions )
說明:
1. in 後面接的是一個集合,表示column1 存在集合裡面。
2. select 出來的資料形態必須符合 column1。
其他查詢
select *
from table_name1
where column1 like 'x%'
說明:like 必須和後面的'x%' 相呼應表示以 x為開頭的字串。
select *
from table_name1
where column1 in ('***','yyy',..)
說明:in 後面接的是一個集合,表示column1 存在集合裡面。
select *
from table_name1
where column1 between xx and yy
說明:between 表示 column1 的值介於 xx 和 yy 之間。
3、更改資料:
update table_name
set column1='***'
where conditoins
說明:
1.更改某個欄位設定其值為'***'。
2.conditions 是所要符合的條件、若沒有 where 則整個 table 的那個欄位都會全部被更改。
4、刪除資料:
delete from table_name
where conditions
說明:刪除符合條件的資料。
說明:關於where條件後面如果包含有日期的比較,不同資料庫有不同的表達式。具體如下:
(1)如果是access資料庫,則為:where mydate>#2000-01-01#
(2)如果是oracle資料庫,則為:where mydate>cast('2000-01-01' as date)
或:where mydate>to_date('2000-01-01','yyyy-mm-dd')
在delphi中寫成:
thedate='2000-01-01';
query1.sql.add('select * from abc where mydate>cast('+''''+thedate+''''+' as date)');
如果比較日期時間型,則為:
where mydatetime>to_date('2000-01-01 10:00:01','yyyy-mm-dd hh24:mi:ss')
4、增加資料:
insert into table_name (column1,column2,...)
values ( value1,value2, ...)
說明:
1.若沒有指定column 系統則會按表格內的欄位順序填入資料。
2.欄位的資料形態和所填入的資料必須吻合。
3.table_name 也可以是景觀 view_name。
insert into table_name (column1,column2,...)
select columnx,columny,... from another_table
說明:也可以經過一個子查詢(subquery)把別的表格的資料填入。
⑧ 求SQL常用數據類型轉換函數
sql中用convert這個函數進行數據類型轉換
1.CONVERT() 函數可以用不同的格式顯示日期/時間數據。
CONVERT(data_type(length),data_to_be_converted,style)
style:
100 或者 0 mon dd yyyy hh:miAM (或者 PM)
101 mm/dd/yy
102 yy.mm.dd
103 dd/mm/yy
104 dd.mm.yy
105 dd-mm-yy
106 dd mon yy
107 Mon dd, yy
108 hh:mm:ss
109 或者 9 mon dd yyyy hh:mi:ss:mmmAM(或者 PM)
110 mm-dd-yy
111 yy/mm/dd
112 yymmdd
113 或者 13 dd mon yyyy hh:mm:ss:mmm(24h)
114 hh:mi:ss:mmm(24h)
120 或者 20 yyyy-mm-dd hh:mi:ss(24h)
121 或者 21 yyyy-mm-dd hh:mi:ss.mmm(24h)
126 yyyy-mm-ddThh:mm:ss.mmm(沒有空格)
130 dd mon yyyy hh:mi:ss:mmmAM
131 dd/mm/yy hh:mi:ss:mmmAM
例子:CONVERT(VARCHAR(10),GETDATE(),110)
2.CONVERT() 函數是把數據類型間的轉換
例子:select CONVERT(int,'10')
⑨ sql server中創建表時各個數據類型時什麼意思
SQL Server 數據類型分類及含義如下:
1、Character 字元串:
(9)tosqldtype擴展閱讀:
關於SQL數據類型的特徵解析:
在 SQL Server 中,每個列、局部變數、表達式和參數都具有一個相關的數據類型。 數據類型是一種屬性,用於指定對象可保存的數據的類型:整數數據、字元數據、貨幣數據、日期和時間數據、二進制字元串等。
當兩個具有不同數據類型、排序規則、精度、小數位數或長度的表達式通過運算符進行組合時,結果的特徵由以下規則確定:
1、結果的數據類型是通過將數據類型的優先順序規則應用到輸入表達式的數據類型來確定的。 有關詳細信息,請參閱數據類型優先順序 (Transact-SQL)。
2、當結果數據類型為 char、varchar、text、nchar、nvarchar 或 ntext 時,結果的排序規則由排序規則的優先順序規則確定。 有關詳細信息,請參閱排序規則優先順序 (Transact-SQL)。
3、結果的精度、小數位數及長度取決於輸入表達式的精度、小數位數及長度。 有關詳細信息,請參閱精度、小數位數和長度 (Transact-SQL)。