zoukankan      html  css  js  c++  java
  • sql笔记

    where子句要放在order by子句之前

    通配符通过LIKE,单字符匹配通过_,多字符匹配通过%,eg:select * from T_Employee where Fname LIKE '_erry'; select * from T_Employee where Fname LIKE 'DEV%';

    select * from T_Employee where Fname is NULL;对于NULL不能使用=等其他来筛选,只能通过is或is not

    select * from T_Emplyee where Fage between 20 and 30;

    GROUP BY子句必须放在WHERE子句后面

    WHERE子句中不能出现聚合函数,这种情况可用HAVING,eg:HAVING count(*)>2
    WHERE是在分组前原表的数据过滤

    HAVING是在分组后新建表的数据过滤
    HAVING跟在GROUP BY后面

    UNION会删除重复行,UNION ALL不会

    CASE
    WHEN a>b then a
    WHEN b>a then b
    ELSE 0
    END
    CASE可如上所示是比较时,后面不跟变量

    DELETE只能删除行,不能删除列,因此DELETE的语句为DELETE FROM table WHERE *

     事务在数据库中执行有两种模式。第一种为自动提交模式:每条sql语句就是一个事务;第二种为直到用户执行COMMIT或者ROLLBACK为止算作一个事务。通常的数据库都可以选择其中任意一种模式。默认使用自动提交模式的数据库有SQL Server,PostgreSQL和MySQL等。自动提交模式下,每条SQL语句都被括在事务的开始语句和结束语句中。自动提交模式中,需要特别注意DELETE语句,因为在该模式下,执行了DELETE操作,即使再回滚也无济于事了。

  • 相关阅读:
    用循环链表求解约瑟夫问题
    Nim游戏变种——取纽扣游戏
    POJ-2726-Holiday Hotel
    常用排序算法总结(二)
    常用排序算法总结(一)
    找出数组中出现次数最多的那个数——主元素问题
    C99新特性:变长数组(VLA)
    linux tftp配置 (Ubuntu18.04)
    Ubuntu 18.04安装Samba服务器及配置
    记录学习Linux遇到的问题
  • 原文地址:https://www.cnblogs.com/ningjing213/p/11956464.html
Copyright © 2011-2022 走看看