大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

面試題首頁 > Oracle面試題

Oracle面試題

001Oracle中數字函數有哪些?

NVL( string1, replace_with) :如果string1為NULL,則NVL函數返回replace_with的值,否則返回string1的值,如果兩個參數都為NULL ,則返回NULL。
SIGN(n) :該函數用于檢測數字的正負.如果數字n小于0,則函數的返回值位-1;如果數字n的值等于0,則函數的返回值等于0,如果數字n大于0,則函數的返回值等于1。
CEIL(n) :該函數用于返回大于等于數字n的最小整數。
FLOOR(n):該函數用于返回小于等于數字n的最大整數。
MOD(m,n) :該函數用于返回兩個數字相除后的余數.如果數字n為0,則返回結果為m。
ROUND(n,[m]) :該函數用于執行四舍五入運算;如果省略m,則四舍五入至整數位;如果m是負數,則四舍五入到小數點前m位;如果m是整數,則四舍五入至小數點后m位。
TRUNC(n,[m]) :該函數用于截取數字。如果省略數字m,則將數字n的小數部分截去;如果數字m是正數,則將數字n截取到小數點后的第m位;如果數字m是負數,則將數字n截取到小數點前m位。

002Oracle中字符函數有哪些?

TRIM([ { { LEADING | TRAILING | BOTH },截取特定字符串。
ASCII(char):該函數用于返回字符串首字符的ASCII值。
CHR(char) :該函數用于將ASCII碼值轉變為字符。
CONCAT:該函數用于連接字符串,其作用于連接操作符(||)完全相同。
LENGTH(char):該函數用于返回字符串的長度,如果字符串的類型為CHAR,則其長度包括所有的后綴空格:如果char是null,則返回null。

003Oracle中日期時間函數有哪些?

ADD_MONTHS(d,n):該函數用于返回特定日期時間 d 之后(或之前)的n個月所對應的日期時間(n為正整數表示之后,n為負整數表示之前)。
TRUNC(d,[fmt]) :該函數用于截取日期時間數據.如果fmt指定年度,則結果為本年度的1月1日;如果fmt指定月,則結果為本月1日。
MOTNS_BETWEEN(d1,d2):該函數用于返回d1和d2之間相差的月數.如果d1小于d2,則返回負數;如果d1和d2的天數相同,或都是月底,則返回整數;否則Oracle以每月31天為準來計算結果的小數部分。
NEXT_DAY(d,char):該函數用于返回指定日期后的第一個工作日(由char指定)所對應的日期。

004Oracle中轉換函數有哪些?

TO_CHAR(data[,fmt[,nls_param]]) :該函數用于將日期值轉變為字符串,其中fmt用于指定日期格式,nls_param用于指定nls參數。
TO_CHAR(n[,fmt[,nls_param]]):用于將數字值轉換為VARCHAR2數據類型。
TO_DATE(char[,fmt[,nls_param]]):該函數用于將符合指定日期的函數轉變為DATE類型的數值。

005Oracle中解碼函數?

DECODE函數為Oracle專屬。

006Oracle中字符串用什么符號鏈接?

1)使用符號“||”

SELECT '工號為'||FNumber || '的員工姓名為' || FName FROM T_Employee WHERE FName IS NOT NULL?

2)使用CONCAT()函數進行拼接,Oracle中的concat函數僅支持兩個字符串進行拼接,如果要再多,可以嵌套使用。

SELECT CONCAT('工號:',FNumber) FROM T_Employee?

007Oracle是怎樣分頁的?

Oracle中使用rownum來進行分頁, 這個是效率最好的分頁方法,hibernate也是使用rownum來進行oralce分頁的

select * from ( select rownum r,a from tabName where rownum <= 20 ) where r > 10

008Oracle中數據類型?

字符類型:CHAR, VARCHAR2, NVARCHAR2
      CHAR(12)表示包含12個字節的信息,CHAR字段最多可存儲2000字節信息,如果創建表時不指定CHAR長 度,則默認為1。Oracle一個漢字占3個字節,一個字母或數字占1個字節,CHAR(12)可存儲4個漢字。
      VARCHAR2最多可存儲4000字節的信息,VARCHAR2(n)中的n表示的是字節
      NVARCHAR2也是最多4000字節信息,NVARCHAR2(n)中的n表示的是字符長度。
數字類型:NUMBER、 INTEGER
      NUMBER(P, S)中P表示的是有效數字的位數,最多不超過38,S表示小數的位數。
      INTEGER是NUMBER的子類型,等于NUMBER(38, 0),用來存儲整數。
浮點數:BINARY_FLOAT類型、BINARY_DOUBLE類型
日期類型:DATE、TIMESTAMP
LOB類型:CLOB、BLOB、NCLOB
      CLOB, 最大長度4G
      BLOB, 存儲二進制文件,如圖像、聲音、視頻等,最大長度4G
      NCLOB, 存儲UNICODE類型數據,最大長度4G
LONG, RAW, LONG RAW類型
      LONG存儲變長字符串,最多2G字符數據
      LONG RAW存儲2G二進制數據
      RAW存儲二進制或字符類型數據

009Oracle中數據類型間相互轉換?

--轉換日期型:to_date(x,y) --y的長度要和x保持一致
    eg: to_date(sysdate,'yyyy-mm-dd hh24:mi:ss')
--轉換字符型:to_char()    --可以單獨去'yyyy''mm''dd'...
--轉換數字型:to_number()

010刪除重復行的rowid寫法?

delete from grade t2
where rowid != (select max(rowid)
                   from grade t
                  where t.name = '張三'
                    and t.subject = 'chinese')
   and t2.name = '張三'
   and t2.subject = 'chinese';
commit;

011比較truncate和delete命令 ?

Truncate 和delete都可以將數據實體刪掉,truncate 的操作并不記錄到 rollback日志,所以操作速度較快,但同時這個數據不能恢復
Delete操作不騰出表空間的空間
Truncate 不能對視圖等進行刪除
Truncate是數據定義語言(DDL),而delete是數據操縱語言(DML)

012表空間是什么?

tablespace --表空間對應用戶數據的存儲,在創建用戶時一般會指定表空間,如果沒,默認為users.存儲用戶的所有對象。
表空間包括:數據段segemnet --數據區extents --數據塊data block,一個數據文件只能存儲在一個表空間中。

013Oracle中function和procedure的區別?

function為函數,procedure為存儲過程。
1)函數是存儲過程的一種。
2)函數可以沒有參數,但是一定需要一個返回值,存儲過程可以沒有參數,不需要返回值
3)函數return返回值沒有返回參數模式,存儲過程通過out參數返回值, 如果需要返回多個參數則建議使用存儲過程
4)在sql數據操縱語句中只能調用函數而不能調用存儲過程。

014PL/SQL語法結構?

declare
    --聲明變量
    變量 數據類型 := 初始值;
    變量 數據類型 := &提示字段;--自定義輸入數據
    變量 表名.列名%type := 初始值;--使用某表的列定義數據類型
    變量 表名%type := 初始值;--將整個表的數據拿到自身,需要使用其中的數據類型時,表名.列名調用即可。
begin
    select...--sql取數語句
    into...--對應變量
    dbms_output.put_line();--數據輸出格式
end;

015PL/SQL系列之if-esle語句結構?

declare
   --聲明部分
begin
   --邏輯/操作部分
   select...
   
   if 條件1 and/or  條件2 then 
     操作1;
   elsif 條件3 and/OR 條件4 then 
     操作2;
   ...
   else
     其他操作;
   end if;   
end;

016PL/SQL系列之case-when語法結構

declare
   --聲明部分
begin
   --邏輯/操作部分
   case
     when 條件1 and/or 條件2 then 
       操作1;
     when 條件3 and/OR 條件4 then 
       操作2;
     ...
     else
       其他操作;
   end case; 
end;

017PL/SQL系列之loop語法結構

declare
  --聲明部分
begin
  --邏輯部分
  loop
    --循環體
    
    if 退出循環的條件 then
      exit;
    end if;   
    
    --退出循環的簡寫
    exit when 退出循環的條件;   
  end loop;
end;

018PL/SQL系列之while語法結構

declare
    --聲明部分
begin
    while 進入循環的條件 loop
        --循環體
    endloop;
end;

019PL/SQL系列之for語法結構

declare
--聲明部分
begin
    --邏輯部分
    for 循環變量 in 循環下限 .. 循環上限 loop
        --循環體
    endloop;
end;

020PL/SQL系列之顯示游標

--聲明顯示游標的語法結構
declare
	--聲明部分
  cursor 游標名 is
  select查詢結果集; 
begin
  --使用顯示游標(其實就是 使用這個游標中的數據):結合循環,依次獲取到游標指向的結果集的每一行
  for 循環變量 in 游標名 loop
    --循環體
    --在循環體內可以依次使用結果集的每一行數據,使用的方式就是:循環變量.游標指向的結果集的列名
  end loop;
end;
--開發規范:游標名以 c_ 開頭

021PL/SQL系列之存儲過程

create [or replace]  procedure 存儲過程名[(參數1 [參數類型] 數據類型[,參數2 [參數類型] 數據類型,...])]
is/* / as*/
  --聲明/定義部分
begin
  --操作/邏輯部分
end;
--開發規范:存儲過程名以 sp_ 開頭

022PL/SQL系列之自定義函數

CREATE OR REPLACE FUNCTION FUN_函數名(參數1 [IN|OUT|IN OUT] 數據類型,參數2 [IN|OUT|IN OUT] 數據類型……)
  RETURN  返回結果的數據類型 
IS  /*|AS*/
BEGIN 
  自定義函數的的計算邏輯。
  RETURN  計算結果 ;   -- 函數的執行體中一定要包含 返回值 
END ;

目錄

返回頂部
主站蜘蛛池模板: 欧美视频亚洲视频 | 4hu最新| 欧美成一级 | 亚洲精品久久成人福利 | 香蕉视频在线观看网站 | 亚洲精品久久九九精品 | 亚洲不卡视频在线 | 国产一区二区精品久久岳 | 五月桃花网婷婷亚洲综合 | 天天色综合色 | 国内一区亚洲综合图区欧美 | 精品欧美一区二区精品久久 | 欧美91精品久久久久网免费 | 性生活视频免费 | 久久综合给合久久狠狠狠97色 | 午夜国产精品久久影院 | 一级毛片日韩a欧美 | 毛片在线看网站 | 欧美人成在线 | 女人色毛片女人色毛片中国 | 在线中文字幕视频 | 久久99爱re热视 | 欧美日韩高清观看一区二区 | 天天插日日射 | 97免费在线| 六月婷婷久香在线视频 | 九热这里只有精品 | 亚洲欧美不卡 | 欧美人交性视频在线香蕉 | 中文字幕不卡免费高清视频 | 亚洲精品蜜桃久久久久久 | 久久精品国产免费 | 看黄网站在线观看 | 一区免费 | 国产欧美乱码在线看 | 成人久久久精品乱码一区二区三区 | 青草免费免费观看视频在线 | 国产麻豆精品高清在线播放 | 亚洲国产美女精品久久久久 | 天天草夜夜 | 久草免费色站 |