查詢 昨天的記錄:
select * from [table_name] where [create_date]= sysdate-1--昨天上午10點的記錄
select * from [table_name] where [create_date]=trunc(sysdate-1) + 10/24
--上個月的記錄
select * from [table_name] where [create_date] = to_date(to_char(sysdate,'yyyy') || to_char(sysdate,'mm')-1 ||
to_char(sysdate,'dd'),'yyyy-mm-dd')
select to_char(trunc(add_months(last_day(sysdate), -1) + 1), 'yyyy-mm-dd') "本月第一天",
to_char(last_day(sysdate), 'yyyy-mm-dd') "本月最後一天"
--oracle trunc()函式的用法
/**************日期********************/
1.select trunc(sysdate) from dual --2011-3-18 今天的日期為2011-3-18
2.select trunc(sysdate, 'mm') from dual --2011-3-1 返回當月第一天.
3.select trunc(sysdate,'yy') from dual --2011-1-1 返回當年第一天
4.select trunc(sysdate,'dd') from dual --2011-3-18 返回當前年月日
5.select trunc(sysdate,'yyyy') from dual --2011-1-1 返回當年第一天
6.select trunc(sysdate,'d') from dual --2011-3-13 (星期天)返回當前星期的第一天
7.select trunc(sysdate, 'hh') from dual --2011-3-18 14:00:00 當前時間為14:41
8.select trunc(sysdate, 'mi') from dual --2011-3-18 14:41:00 trunc()函式沒有秒的精確
/***************數字********************/
/* trunc(number,num_digits)
number 需要截尾取整的數字。
num_digits 用於指定取整精度的數字。num_digits 的預設值為0。
trunc()函式擷取時不進行四捨五入
*/
Oracle 的連線查詢記錄
先 兩張表 建表語句如下 create table a id number primary key,name varchar2 20 class varchar2 40 homeaddress varchar2 200 create table b classid number primary ke...
oracle資料庫查詢過後顯示所受影響的行數
本文是在查詢過程中顯示受影響的行數,就是一共查出來幾條。適用於查詢的表的資料相當大的情況,上萬條。在其他運算元據所返回的受影響行數,就是例如我修改一下,增加一下,刪除一下。這些對資料進行操作的。想要展示受影響行數有其他函式例如sql rowcount sql rowcount用於記錄修改的條數,必須...
學習oracle查詢優化的記錄
1 新增注釋 2 減少資料庫連線 3 共享sql語句 使用佔位符 4 通過索引訪問 5 選擇最有效率的表名 oracle解析器按照從右到左的順序處理from後的表名。最後出現的表資料越少效率越快 如果有3個以上的表連線查詢,那就需要選擇交叉表 intersection table 作為基礎表,交叉表...