sql1

作者: 苏水的北 | 来源:发表于2021-08-09 21:25 被阅读0次

    sql常用语句:

    1、显示时间(在sql当中执行操作系统的命令):

    SQL> host date +"%F %T"
    2021-04-07 08:34:14
    

    2、在sql中调用linux系统文件语法:

    SQL> host vim zhangsan.sql
    select * from scott.emp;
    

    3、在sql中执行linux系统中的脚本:
    备注:@sql基本路径,执行sql脚本达到批量执行sql语句的目的。

    SQL> @zhangsan.sql
    
         EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM     DEPTNO
    ---------- ---------- --------- ---------- --------- ---------- ---------- ----------
          7369 SMITH      CLERK           7902 17-DEC-80        800                    20
          7499 ALLEN      SALESMAN        7698 20-FEB-81       1600        300         30
          7521 WARD       SALESMAN        7698 22-FEB-81       1250        500         30
          7566 JONES      MANAGER         7839 02-APR-81       2975                    20
          7654 MARTIN     SALESMAN        7698 28-SEP-81       1250       1400         30
          7698 BLAKE      MANAGER         7839 01-MAY-81       2850                    30
          7782 CLARK      MANAGER         7839 09-JUN-81       2450                    10
          7788 SCOTT      ANALYST         7566 19-APR-87       3000                    20
          7839 KING       PRESIDENT            17-NOV-81       5000                    10
          7844 TURNER     SALESMAN        7698 08-SEP-81       1500          0         30
          7876 ADAMS      CLERK           7788 23-MAY-87       1100                    20
    
         EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM     DEPTNO
    ---------- ---------- --------- ---------- --------- ---------- ---------- ----------
          7900 JAMES      CLERK           7698 03-DEC-81        950                    30
          7902 FORD       ANALYST         7566 03-DEC-81       3000                    20
          7934 MILLER     CLERK           7782 23-JAN-82       1300                    10
    
    14 rows selected.
    

    数据库分类:

    1、关系型数据库:

    oracle、mysql、sql server、pgsql

    2、非关系型数据库:

    redis(内存型数据库)、mogodb(文档型数据库)。注意非关系型数据库不遵循SQL标准。

    一、sql语法:

    1、在sql标准中,将sql语句分为三类:

    DML(Data Manipulate Language 数据操作语言):
    DDL(Data Definition Language 数据定义语言):
    DCL(Data Control Language 数据控制语言):

    1.1、DML数据操作语言:指代我们对数据库中数据的具体操作。增删改查(insert、delete、update、select)
    1.2、DDL数据定义语言:指代我们对数据库中表、表空间等对象的操作。创建、修改、删除(create、alter、drop)
    1.3、DCL数据控制语言:指代我们在数据库中对用户授权的相关操作(权限相关)。授权、回收权限(grant、revoke)

    2、sql学习(scott用户):

    image.png
    image.png
    2.1、简单查询:我们针对一张数据表的查询操作称之为简单查询。
    image.png
    备注:固定的语法全部大写,可变的内容全部小写,更容易排查问题。
    语法:(执行顺序)
    2.select(*|列名 [别名]|计算过程)
    1.from (table_name);
    范例1:查看emp表中的所有数据:
    select * from emp;
    

    范例2:查看公司所有雇员姓名,雇员编号及薪资。
    1、确定数据来源--->emp数据表
    2、确定需要的字段--->ename、empno、sal

    select   ename,empno,sal from   emp;
    

    范例3:查看公司所有员工姓名,部门编号,年薪(年薪构成为15薪,每个月有200车补,100餐补、35话补)
    1、确定数据表:emp
    2、确定字段:ename、deptno、sal15+(200+100+35)12

    select  ename,deptno,sal*15+(200+100+35)*12  from emp;
    
    2.2、常量:我们会在使用select子句时,也可以查询常量:定义的常量字段需要用单引号标记起来,目的是与表中的字段做区分。
    SQL> select 'name',ename from emp;
    
    'NAM ENAME
    ---- ----------
    name SMITH
    name ALLEN
    name WARD
    name JONES
    name MARTIN
    name BLAKE
    name CLARK
    name SCOTT
    name KING
    name TURNER
    name ADAMS
    name JAMES
    name FORD
    name MILLER
    
    14 rows selected.
    
    2.3、字符串拼接:可以将多个字段拼接为1个字段.使用||这个符号进行字符串的拼接。
    select ename,job from emp;
    SQL> select  'Name is ' ||ename||',Work is '  ||  job from emp;
    
    'NAMEIS'||ENAME||',WORKIS'||JOB
    ------------------------------------
    Name is SMITH,Work is CLERK
    Name is ALLEN,Work is SALESMAN
    Name is WARD,Work is SALESMAN
    Name is JONES,Work is MANAGER
    Name is MARTIN,Work is SALESMAN
    Name is BLAKE,Work is MANAGER
    Name is CLARK,Work is MANAGER
    Name is SCOTT,Work is ANALYST
    Name is KING,Work is PRESIDENT
    Name is TURNER,Work is SALESMAN
    Name is ADAMS,Work is CLERK
    
    3.1、限定查询:

    语法:(执行顺序)
    3 select(*|列名 [别名]|计算过程)
    1 from (数据表)
    2 where (限定条件)
    备注:where 条件(AND|OR|NOT)--->若存在多个判定条件,我们可以引入逻辑运算(与或非)
    关系运算(如下提到的一些判断符,应该出现在where子句中):

    ,<,>=,<=,<>,!=
    BETWENNT...AND
    IN,NOT IN
    LIKE
    IS NULL,IS NOT NULL
    范例1:查询出工资大于1000的所有雇员的信息:
    1、确定数据表:emp
    2、确定字段:*
    3、确定已知的条件:sal >1000

    select * from emp where sal>1000;
    

    范例2:查询出工资在1000~1500(闭区间)之间的所有非销售人员的编号、姓名、职位、工资。
    1、确定数据表:emp
    2、确定字段:empno、ename、job、sal
    3、确定已知的条件:sal >=1000、sal<=1500、job !='SALESMAN'

    相关文章

      网友评论

          本文标题:sql1

          本文链接:https://www.haomeiwen.com/subject/eemzvltx.html