SQL基础介绍

来源:互联网 发布:淘宝网苏泊尔电压力锅 编辑:程序博客网 时间:2024/05/26 17:47
      SQL是Structured Quevy Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。
SQL包括了所有对数据库的操作,主要是由4个部分组成,一个是DML(数据库查询语句),一个是DDL(数据库定义语句),一个是数据控制,另一个是嵌入式SQL语言的使用规定。
 
一、DML数据库查询语句
      SELECT,UPDATA,INSERT,DELETE
      (1)SELECT
      a. 查所有纪录
      例如:SELECT *  FROM 表
      b. 条件是字符
      例如:SELECT  * FROM 表 WHERE NAME = ' " & myname & " '   
      c. 条件是数字
      例如:SELECT  * FROM 表 WHERE   ID = " & myid & "   数字 
      d. 查询所有的表
      例如:SELECT  * CAT 查询所有的表
      e. 查询纪录的前三条
      例如:SELECT  * FROM 表 WHERE Rownum<4
      f. 取oracle服务器的系统时间
      例如:SELECT sysdate FROM dual
      g. SELECT count(RowID) Rowcount FROM 表1
      如果查不出数据时候,结果是0
      h. 替换
      例如:SELECT REPLACE(’JACK and JUE’,’J’,’BL’) "Changes" FROM DUAL;      
    
      (2)UPDATE
      UPDATE 表 set 字段 = ‘表达式'  where 条件
    
      (3)INSERT
      INSERT INTO 表(字段1,字段2,....) value (’常量1’,‘常量2’,...)
 
      (4)DELETE
      DELETE  FROM 表 WHERE 条件  
 
二、DDL数据库定义语句
      (1)CREATE
    建立一个数据库,定义一个存储空间
    CREAT SCHEMA <模式名> AUTHORIZATION <用户名>    
    基本表的创建
    CREAT TABLE SQL 模式名.基本表名
    例如:
           CREAET TABLE S(S#    CHAR(3)        NOT Null,
                                             SN   CHAR(15),
                                             ......);
 
      (2)ALTER
           基本表结构的修改
           ALTER TABLE 基本表名 ADD/ DROP (增加/删除) 列名 类型名(增加时写出)
           ALERT Table table
                         ADD [column] column
                         ALERT [column] column
                         ReName [column] column To newcolumn
                         ReName to newtable
                         Add table constraint definition
           例如:
           ALTER  TABER  S ADD SEX SMALLINT  
 
      (3)DROP
           基本表的撤消
           DROP TABLE 基本表名 [CASCADE|RESTRICT]
           例如:
           DROP TABLE T1
           用户的撤消
           DROP 
 USER 用户名
 
三、数据控制
      (1)conn
           连接一个用户
           例如:
           conn 用户名/密码@主机字符串
 
四、SQL函数:
字符函数
(1)Assii(c)/chr(i)
例如:Assii('A') = 64,chr(65)='A'
(2)concat(c1,c2) = c1||c2
(3)initcap(c) 第一位大写
(4)instr/instrb(c1,c2,i,j)
例如:instr('abcdabcd','ab',2,1)
(5)length/lengthb(c)
(6)lower/upper(c)
(7)lpad/rpad(c1,i,c2) 在左或右加c2加
(8)ltrim/rtrim/trim(C1,c2) 除去空字符
(9)replace(c1,c2,c3)查找c1中c2,并有c3替换,如无c3则去掉c2
(10)substr/substrb(c1,i,j) 截c1
(11)translate(c1,c2,c3)返回字符在字符串的位置
例如'eg'在'abcdefg'中返回5,7
数字函数 
(1)abs(n) 绝对数
(2)sin/sinh/asin(θ),cos/cosh/acos(θ) 正弦/双正弦/反正弦
(3)floor/ceil(n) 返回比入数大的最小整数
(4)exp/ln(n)
(5)log(n1,n2)
(6)mod(n1,n2)
(7)power(n1,n2)
(8)sqrt(n)
(9)round(n1,n2)
例如:round(1235.1235,3)=1235.124
          round(1235.1235,-3)=1200
(10)trunl(n1,n2) 只舍不入
(11)sign(n) 返回-1,0,1看正负
日期函数
(1)Add_months(d,i) 加月
例如:1/30变成2/26
(2)last_day(d) 返回d月的最后一天是几号
(3)months_between(d1,d2) 两个月中有几个月
(4)new_time(d,t21,t22) d时间在t21指定换算到t22
(5)next_day(d,dow) 下星期是几号
(6)round(d,fmt) 四舍五入,fmt表示日期格式精确到哪一位
半天,半小时,半月和半分为分界
(7)trunc(d,fmt) 只舍不入
(8)sysdate 返回系统日期
变换函数
(1)to_char()
(2)to_data()
(3)to_number()
(4)DY-天缩写
       DAY-天全称
       D-天(1-7)
       DD-月天数(1-31)
       DDD-年天数(1-365)
       W-月几个星期
       WW-年几个星期
       MM-月
       MON-月缩写
       MONTH-月全称
       RM-以罗马字返回
       yyyy-返回年
       syyyy-返回字符年(公元1999)
       HH1-返回12小时制
       HH12-同上
       HH24-返回24小时制
       MI-分钟
       SS-秒
       SSSSS-返回一天中的最几秒
       9-代表一个数字,无的话用空格代替
       0-代表一个数字,无的话用0代替
       1/G-千分号
       $/L-指定加$获L
       FM-去掉空格
       EEEE-科学计数法  
       MI-把负号放在后面
       PR-把负号放在前面
       RN-大写罗马数字
       rn-小写罗马数字
其它函数
(1)decode(x,mi,ri,m2,r2,.....,default) 判断取值函数
例如:decode(f1,1,2,2,4,3,9,0)
(2)greatest/least(epp_list)
例如:epp_list 1,2,3,4,5 里面 1是least,5是greast
(3)Uid  用户ID
      User 用户名
      Userenu 用户环境 isDBA/sessionID/ISUSTANCE/language/lang/Terminal
主函数
(1)avg 平均数
(2)count 计算
(3)Max/Min 最大最小
(4)stddev 标准差
(5)variance 标准差
(6)sum 合计
例如: Select class,count(student),avg(chu),sum(chu) from XX group by class
原创粉丝点击