SQL语言基础使用

--2012-5-29

表名:test

1.在Oracle中添加一列
eg:alter table test add age number;

2.删除一列
eg:alter table test drop column age;

3.访问另一个用户dept表

如果没有权限就授予:grant select on dept to tt 意思:给tt用户在dept表查询权限
收回权限:revoke select on dept from tt 意思:把dept权限从tt收回

常用系统函数

1.字符
length():查询字符串的长度(空格也算字符)
lengthb():查询字符串有多少个字节
ltrim():截取左边的空格 eg:select length(ltrim('  aa')) from dual; 意思:截取昨天的空格,返回字符串的长

度。
rtrim():截取右边的空格
trim():截取两边的空格

varchar2(10)和char(10)===可变长度和定长长度有什么区别?

可变长度是存储多少字符就在数据库里占用多少空间
固定长度是定义了多少就存储了多少;不足的就用空格填充;建议存储字符用可变长度类型。
eg:select length(a1),length(b1) from dual

substr():截取字符串,从1算起

2.日期
sysdate当前时间
current_date
next_day:给定某个日期、某个星期,判断某个星期的下个日期。
eg:select next_day(sysdate,'星期一') from dual; 今天是2012-5-29 星期二
输出:04-6月-12 ====2012-06-04是星期一

3.转换
to_char():将非字符型转换成字符
eg:默认显示是12小时制
SQL> select to_char(sysdate,'yyyy-mm-dd hh:mi:ss') from dual;
TO_CHAR(SYSDATE,'YY
-------------------
2012-05-29 08:39:25

eg:改成24小时制
SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;
TO_CHAR(SYSDATE,'YY
-------------------
2012-05-29 20:40:30

to_date():将字符型转换成日期

t0_number():将数值字符转换成整型

4.聚集
sum():求和 avg():求平均值  count():求行数(包含空值)
max():求最大值;min():求最小值

5.其他

user:查询当前用户 eg:select user from dual;
decode(条件,值1,翻译值1,值2,翻译值2,值3,...)
nvl():判断空值

下面的内容都是在SQL*PLUS环境下执行的

1.在执行缓冲区里执行PL/SQL命令用斜线

2.? 关键字 查询这个关键的含义
  eg:? set

set serveroutput on size 10000 在缓冲区可有10000万个字符

L---现在缓冲区的内容

save c:\plsql_01.txt-------保存缓冲区的内容到指定文本中--用EditPlus工具编写

@  c:\plsql_01.txt------执行文件中命令

DBMS_OUTPUT.put()与DBMS_OUTPUT.PUT_LINE()都是输出的意思

只是DBMS_OUTPUT.put()后面要加上DBMS_OUTPUT.new_line--在新行中打印输出

eg1:dbms_output.put_line('x的值为'||x);
eg2:
DBMS_OUTPUT.put('x的值为'||x);
dbms_output.new_line;

************
分支语句
if ...then
elsif...then..
else
end if;

case分支
case
when ...then...
when ...then...
else..
end case

************循环语句
基本循环
loop
...
end loop

while循环

while ...loop
end loop

for循环
for i int (reverse)上限数字..下限数字 LOOP
.....
END LOOP;


**********


 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值