1,
如果字段是定長的 char(10) 沒有寫滿會用空格來補。varchar2(10)是不定長的。定長方式因為用空格來補所以取到的數據需要去掉空格,可以用trim,rtrim,ltrim函數。
不推薦使用定長,儘量設成不定長的。
2,
日期函數
oracle用sysdate來表示當前時間
SELECT sysdate FROM dual;
還有一個current_date和sysdate一樣表示當前時間。
SELECT current_date FROM dual;
我們可以改變一下顯示方式。比如:
ALTER SESSION SET NLS_DATE_FORMAT='dd-mon-yyyy hh:mi:ss';
NEXT_DAY
select next_day(sysdate,'星期三') from dual;
表示今天以後的第一個星期三是那一天
3,
聚集函數
sum,max,min,avg,count
select max(price) from books;
select min(price) from books;
select sum(price) from books;
select avg(price) from books;
select count(price) from books;
select count(*) from books;
一般情況下count(field1)和count(*)取得的記錄條數是一樣的,但是當某些記錄的字段是空值的時候,就會出現不相等了,必須注意。