你好,Oracle中日期類型是date類型,sql語句中是區分類型的,也就是說雖然形勢上'2012-12-21'是一個日期,但是它在Oracle中卻是實實在在的字符串類型,所以不能插入到date類型的字段里,解決方法就是將日期字符串轉換成date類型就可以了,這里可以使用to_date函數,如:
創新互聯建站專注為客戶提供全方位的互聯網綜合服務,包含不限于成都網站建設、成都網站設計、蕉城網絡推廣、微信平臺小程序開發、蕉城網絡營銷、蕉城企業策劃、蕉城品牌公關、搜索引擎seo、人物專訪、企業宣傳片、企業代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們最大的嘉獎;創新互聯建站為所有大學生創業者提供蕉城建站搭建服務,24小時服務熱線:028-86922220,官方網址:m.kartarina.com
insert into tablename (date_column) values(to_date('2012-12-21','yyyy-mm-dd') )。
to_date里需要兩個參數,第一個是日期字符串,可以在程序中拼好(Java或者其他高級程序語言想實現這一點都是很容易的);第二個參數是日期的格式,'yyyy-mm-dd'的意思是想要4位的年份,兩位的月份(比方說如果為2,則保存為:02)和兩位的日期(這個意義和月份相同,假如為4號,則保存為04)。如果想要其他的格式或者想插入具體的時分秒時間都是可以的,比如:
to_date('2012-12-21 12:12:12','yyyy-mm-dd hh24:mi:ss')后邊的24代表使用24時制時間。夠明白吧!
這個問題在項目中是一個很重要的細節,具體有兩種處理方式,主要取決于這個表是否需要進行數據交換,以及這個時間字段如何使用,具體舉兩個例子吧:
一、使用varchar2型
1、如果這張表對時間的精度要求不高,比如只是到日。
2、該表需要經常與其他表進行數據交互,比較,查詢,并且其他表的時間精度不高于日(比如日、月、季度)
3、存儲大量數據用于統計分析,如本期、同期,累計值等。
存儲的時候需要格式化,例如:to_char(sysdate,'yyyy-mm-dd');
二、使用date型。
1、對時間精度要求較高,比如到秒;
2、需要與其他表做數據交互,更偏重于”準實時“交互,比如每15秒同步一次數據;
3、不用于統計分析(這點很重要,需要統計分析的話,強烈不建議使用date型);
4、該表數據不做物理刪除(刪除時只更新標志位和刪除時間);
以上我這幾年的實際項目經驗,希望可以幫到你。
有幾周,把每個月的最后一天拼成串傳到如下SQL:
select to_char(to_date('20111031','yyyymmdd'),'w') from dual;
每周日期段沒找到直接的,可以自己寫個函數:
1、獲取1號是周幾,如周4;
2、則1-4號為第一周,即1號+(7-4)天=4號;
3、循環:4+1=5號——4+7=11號為第二周;
直到:某周加完后的日期,大于該月的最大天數,則取該月最大天數收尾,循環結束;
第二種方法是你建個存日期的表:
date week
……
20110101
20110102
……
里面存N年的日期,然后根據
select to_char(to_date('20111031','yyyymmdd'),'w') from dual; 把week字段update進去;
然后直接根據這張表寫SQL就直接獲取幾周,每周是幾號到幾號了。。。
create table xxx(id number,time date)
parttion by range(time)
(partion part1 values less than (to_date('2012-01-31','yyyy-mm-dd')) tablespace tb1,
partion part 2 vales less than(to_date('2012-01-31','yyyy-mm-dd')) tablespace tb2);
采用范圍分區(range partition)就可以。
最好還是重新創建一個新表,然后再將舊表數據導入到新表,最后刪掉舊表,并更改新表名稱。
(1)用dblink使你在這個數據庫可以查詢另一個數據庫的信息。注意,權限問題。包括用戶權限和查詢權限。
(2)看到你的顯示結果個人建議用union all來做,就是查出上表的全部數據并上下表E字段與上表E字段相同的字段,然后再排序(如果順序不重要也可以不排序)。左連接或者右連接的話前面要用case when判斷,而且似乎不可行,因為在上表E=a時g也顯示在I字段中,所以用union all似乎更加簡單一些。
分享名稱:關于oracle怎么拼月表的信息
當前URL:http://m.kartarina.com/article2/heihoc.html
成都網站建設公司_創新互聯,為您提供定制開發、微信小程序、服務器托管、響應式網站、虛擬主機、
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯