资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

Oracle怎么加负号 oracle 加号使用方法

oracle中用什么类型来存负数?

使用number类型。定义时这样写,number(6,3)。其中6表示一共6位。3表示有3位是小数。

在龙华等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站设计、成都网站制作 网站设计制作专业公司,公司网站建设,企业网站建设,成都品牌网站建设,成都全网营销推广,外贸营销网站建设,龙华网站建设费用合理。

页面中有正数与负数,怎样在提交时触发oracle数据库中的过程进行相加

使用函数 add_monthsadd_months(time,months) months为整数,正数时是加月,负数时为减月。UPDATE TABLE ASET LOCALTIME=add_months(LocalTime, 1)

oracle常用格式化输出格式有哪些,其功能又是什么

格式化输出

§2.6.1 一般数据的格式化输出

在Oracle的SQL 下,经常用COLUMN 命令来对所输出的列进行格式化,即按照一定的格式进行显示。COLMUN命令语法如下:

COL[UMN] [{ column | expr } [ option_1 ... option_n ] ]

column:列名

expr:有效的 SQL 表达式

option_1... option_n:可以是下列之一:

ALI[AS] alias

CLE[AR]

FOLD_A[FTER]

FOLD_B[EFORE]

FOR[MAT] format

HEA[DING] text

JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]}

LIKE {expr|alias}

NEWL[INE]

NEW_V[ALUE] variable

NOPRI[NT]|PRI[NT]

NUL[L] text

OLD_V[ALUE] variable

ON|OFF

WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED]

下面给出常用的关键字的解释:

Alias 给出列的别名,BREAK和COUMN可以引用所定义的别名。

CLEAR 取消列的定义。

FORMAT 列显示格式,format为:

9999990 9或0的个数决定最多显示多少位

9,999,999.99 按照逗号和小数点来显示数据,若是0以空格显示

099999 显示前面补0

$999,999.99 数字前加美圆号

B99999 若为0 ,则结果为空白

99999Mi 若数字为负,则负号放在数字后(右边),缺省放在左边

99999PR 负号将以括号括起

9.999EEEE 以科学记数法表示(必须有4个E)

999V99 数字乘以 10n ,如 1234变为 123400

DATE 采用日期数字格式(MM/DD/YY)

Heading 重新标记列的显示标题,如:

SQL col ename heading 姓名 format a10

SQL select ename,sal from emp;

例子:

SQL

COLUMN SALARY FOR $9,999,999.99

COLUMN LAST_NAME FOR A35.

§2.6.2 日期的格式化输出

Oracle系统提供了一个 NLS_DATE_FORMAT的环境变量来设置日期的显示格式。用它可以完成按照不同格式要求的显示,比如按照中国的习惯为 yyyy年mm月dd日等。

1.系统日期 sysdate 的显示

用sysdate 可以显示ORACLE RDBMS 所在机器的日期及时间,如:

SQL alter session set nls_date_format ='"公元"yyyy"年"mm"月"dd"日"';

会话已更改。

SQL select sysdate from dual;

SYSDATE

------------------

公元2001年05月30日

2.日期类型的显示

select sysdate,to_char(sysdate,’yyyy.mm.dd hh24:mi;ss’) from dual;

SQL connect scott/tiger

已连接。

SQL alter session set nls_date_format ='yyyy"年"mm"月"dd"日生"';

会话已更改。

SQL col HIREDATE heading 生日

SQL col sal heading 工资

SQL col sal ename 姓名

SQL select ename,sal,hiredate from emp;

姓名 工资 生日

---------- ---------- -----------------

SMITH 800 1980年12月17日生

ALLEN 1600 1981年02月20日生

WARD 1250 1981年02月22日生

JONES 2975 1981年04月02日生

MARTIN 1250 1981年09月28日生

BLAKE 2850 1981年05月01日生

CLARK 2450 1981年06月09日生

SCOTT 3000 1987年04月19日生

KING 5000 1981年11月17日生

TURNER 1500 1981年09月08日生

ADAMS 1100 1987年05月23日生

JAMES 950 1981年12月03日生

FORD 3000 1981年12月03日生

MILLER 1300 1982年01月23日生

已选择14行。

§2.7 加标题

有时在输出一些结果时,可能需要加一些标题,如表上面的顶标题,落款等。这样的要求可由Ttitle和Btitle来完成。

ttitle和btitle

ttitle [center|left|right]string 顶标题

btitle [center|left|right]string 底标题

ttitle center 'XX公司人员情况表'

btitle left '制表人:xxxx' right '日期:xxxx年xx月'

Clear ttitle

§2.8 建立简单报告

我们可以用TTITLE、BTITLE、COLUMN、BREAK ON、COMPUTE SUM及SET LINESIZE、SET PAGESIZE、SET NEWPAGE来设置查询结果的显示格式;在用 SPOOL 命令将显示结果输出到一个操作系统文件中去,一般输出文件的类型为.LST。

建立简单报告主要使用下面命令来实现:

1. SPOOL命令

SPOOL filename 将缓冲区的内容写到文件中

SPOOL off 终止写命令

2. COLUMN 命令

column col_name[,heading] format format_spe

把字段的结果指定为一种输出格式

COL name heading '姓名' for a10

COL sal heading '工资' for 9,999.99

3.ttitle、btitle

ttitle [center|left|right]string 顶标题

btitle [center|left|right]string 底标题

ttitle center 'XX公司人员情况表'

btitle left '制表人:赵元杰' right '日期:1998.11月'

Clear ttitle

4.break、compute

clear breaks,clear computes

break on column 在该列上中断

break on row 在每一行上中断

break on Page

break on report

skip n 跳过n行

skip page 跳过未用完的页

compute avg

compute count

compute max

compute min

compute std

compute sum

compute var

compute num 计算所有行

compute sum of sal on deptno

5.set 在报表中的设置

l set termout off、set termout on 命令

l set termout off 常用SPOOL XXX前,即关闭报表在屏幕上的显示(节省时间)

l set termout on 常用SPOOL off之后,即恢复报表在屏幕上的显示

l set ECHO{OFF|ON} 显示执行当中的各命令(即用start 时),set echo 受到 set termout 的影响

l set Lin[esize]{80|integer} 设置行宽度,最大值999

l set pag[esize] {24|integer} 设置页的大小

例子:

SQLCOL ename heading ‘姓名’ for a12

SQLCOL sal heading ‘工资’ for a999,999.99

SQLCOL hiredate heading ‘出生’

SQLSET LINESIZE 200

SQLSET PAGESIZE 60

SQLSPOOL c:\all_emp

SQLselect ename,sal,deptno,hiredate from emp order by deptno;

SQLSPOOL OFF

§2.9 输入变量

Oracle提供一种在处理SQL语句时可以将参数作为变量来对待的技术,即在条件句中可以是变量而不是具体的值,这样的处理就是输入变量。这样做的目的就是可以重复使用同样的语句,每次只要输入相应的值即可。要实现将参数写成为变量,只要在变量前加一个号即可。看下面语句:

Select sid, serial#,username, command from v$session

Where USERNAME = upper(‘usr’);

这样的语句在运行中,系统会自动提示你回答变量的具体值,上面语句运行时提示和回答时显示的信息如下:

SQL Select sid, serial#,username, command from v$session

2 Where USERNAME = upper('usr');

输入 usr 的值: sys

原值 2: Where USERNAME = upper('usr')

新值 2: Where USERNAME = upper('sys')

SID SERIAL# USERNAME COMMAND

---------- ---------- ------------------------------ ----------

7 26 SYS 3

在变量说明中,可以使用多个变量,比如:

Alter system kill session ‘sid,ser’;

Alter system kill session ‘会话号,序列号’;

它的运行情况如下:

SQL Select sid, serial#,username, command from v$session;

SID SERIAL# USERNAME COMMAND

---------- ---------- ------------------------------ ----------

1 1 0

2 1 0

3 1 0

4 1 0

5 1 0

6 1 0

7 26 SYS 3

8 16 ZHAO 0

已选择8行。

SQL Alter system kill session 'sid,ser';

输入 sid 的值: 8

输入 ser 的值: 16

原值 1: Alter system kill session 'sid,ser'

新值 1: Alter system kill session '8,16'

系统已更改。

一般系统缺省下是使用 “” 符号来定义变量,你也可以使用另外的符号来代替,比如不喜欢用 而要用 ?,则有:

SQL set define ?

SQL select sid,serial#,username from v$session where username='?usr';

输入 usr 的值: SYS

原值 1: select sid,serial#,username from v$session where username='?usr'

新值 1: select sid,serial#,username from v$session where username='SYS'

SID SERIAL# USERNAME

---------- ---------- ------------------------------

7 26 SYS

次时由于我们修改了会话环境的参数值,可以用下面命令查看:

SQL show define

Oracle月结负数怎么查

select * from A where to_char(日期字段,'yyyymm')=to_char(add_months(sysdate,-1),'yyyymm')

这样试验一下,表名和字段名你替换一下,也就是把A和日期字段这俩地方换一下


网页标题:Oracle怎么加负号 oracle 加号使用方法
链接URL:http://cdkjz.cn/article/hjogje.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220