oracle基本sql語句大全 oracle用命令行導(dǎo)出sql語句文本?
oracle用命令行導(dǎo)出sql語句文本?Spool導(dǎo)出的是文本,不是excel表格,主題要引用csv格式的文本。如果導(dǎo)出字段是一個(gè)整數(shù),如銀行,則可以在select子句中帶有||的字段前加上四個(gè)單引號(hào)
oracle用命令行導(dǎo)出sql語句文本?
Spool導(dǎo)出的是文本,不是excel表格,主題要引用csv格式的文本。如果導(dǎo)出字段是一個(gè)整數(shù),如銀行,則可以在select子句中帶有||的字段前加上四個(gè)單引號(hào)。
如果派生字段是類似金額的字段,可以在select子句中對(duì)該字段使用to_char(),格式部分有幾個(gè)9,單位部分根據(jù)需要有0;使用列字段名格式在假脫機(jī)前為該字段設(shè)置足夠的寬度。
sql語句怎么來對(duì)日期進(jìn)行相加減?
在sql server中,您可以使用:
開始日期lt
DateAdd(d,1,to_date(2005-12-09,yyyy-mm-dd))
和完成日期gt
至今(2005年12月9日,yyyy-mm-DD);
oracle中沒有像sql server中那樣定義DateAdd函數(shù)。
Oracle可以使用年/月/日/小時(shí)/分鐘/秒(p,s)的間隔。
增加或減少時(shí)間。
下面是我用oracle寫的DateAdd函數(shù)。
函數(shù)調(diào)用基本上與sql server相同,只是datepart部分需要以字符串形式輸入,也就是說,
DateAdd(d,1,to_date(2005-12-09,yyyy-mm-dd))
改變到
DateAdd(d,1,to_date(2005-12-09,yyyy-mm-dd))
函數(shù)定義如下。函數(shù)中的注釋是對(duì)datepart的新描述,與sql server中的略有不同。)
創(chuàng)建或替換函數(shù)DATEADD( datepart varchar2,num number,indate)返回日期為
結(jié)果日期
v_sql varchar2(1000)
v_datepart varchar2(30)
v_ms varchar2(13)
開始
下:日期部分
/*
日期部分縮寫
年yy,y
季度,q
月mm,m
第日,d日
周周,周
小時(shí),小時(shí)
分鐘米,n
第二個(gè)ss,s
毫秒毫秒
*/
情況
當(dāng)v_dat: select : 1 int: select : 1(間隔3個(gè)月)* ||num|| from dual
當(dāng)v_dat: select : 1 int: select : 1(間隔7天)* ||num|| from dual
當(dāng)v_dat: select : 1 int: select : 1 int: select : 1 int: select : 1 interval | | num | | second from dual
當(dāng)v_datepart用(毫秒,ms)表示時(shí),則
電子商務(wù)至_char(編號(hào)/1000,fm999999990.000)
v _ SQL : select : 1 interval | | v _ ms | | second(9,3) from dual
其他
RAISE_APPLICATION_ERROR(-20001,||datepart||不是可識(shí)別的dateadd選項(xiàng)。)
結(jié)束案例
使用indate在結(jié)果中執(zhí)行即時(shí)v_sql
返回(結(jié)果)
例外
當(dāng)其他人
上升
結(jié)束日期ADD