zoukankan      html  css  js  c++  java
  • 0005 《SQL必知必会》笔记01-SELECT语句

    1、SELECT基本语句:

    SELECT 字段名1,···,字段名n FROM 表名

    2、检索所有字段,用"*"替换字段名,这会导致效率低下

    SELECT * FROM 表名;

    3、去除重复项,“DISTINCT”作用于所有字段

    SELECT DISTINCT 字段名1,···,字段名n FROM 表名;

    4、若检索结果过多,可限定结果的条数

    SELECT 字段名 FROM 表名 WHERE ROWNUM<=n;

    5、对检索出的数据进行排序,ASC为升序,也为默认排序方式;DESC为降序。ORDER BY 语句一定是最后一条语句。如果不排序,那么不能认为检索出的数据的顺序有任何意义

    SELECT 字段名 FROM 表名 ORDER BY 字段名1 ASC|DESC,```,字段名n ASC|DESC;

    6、WHERE 子句,操作符如下,语法都为:WHERE 字段名 操作符 值;注意Oracle至少默认不支持“!<”和“!>”

    操作符 说明 操作符 说明
    = 等于    
    != 不等于 <> 不等于
    < 小于 > 大于
    <= 小于等于 >= 大于等于
    BETWEEN AND 双侧闭区间 IS NULL 空值

    7、WHERE子句的多条件过滤——AND,多个子条件同时满足

    WHERE 子条件1 AND ··· AND 子条件n

    8、WHERE 子句的多条件过滤——OR,满足任意一个条件

    WHERE 子条件1 OR ···OR 子条件n

    9、WHERE子句——IN操作符,满足IN的任意个值,与OR类似,但有如下优点:语法更清楚直观;更易管理求值顺序;比一组OR执行快;可以包含其他SELECT语句,能动态建立WHERE子句。

    WHERE 字段名 IN(值1,···,值n)

    10、NOT操作符:否定其后面的条件。在复杂语句中,NOT非常有用

    WHERE NOT 条件;

    11、AND的求值优先级高于OR,可以用"()"改变优先级

    12、模糊匹配Like操作符,通配符——“%”,匹配0~n个字符;“_”,匹配一个字符。特别注意:Oracle会用空格来补全字段,最好是用TRIM()、RTRIM()、LTRIM()去掉空格

    WHERE 字段名 LIKE ‘带%的字符串’

    13、《SQL必知必会》降到了“[]”通配符,但是Oracle貌似不支持,或者说默认不支持,待学到后面确定了再改这条。

    14、关于通配符:(1)不要过度使用通配符,(2)通配符不要放在开始处,会非常慢,(3)注意通配符的位置,放错地方,可能会返回意外的数据

     

  • 相关阅读:
    121.买卖股票 求最大收益1 Best Time to Buy and Sell Stock
    409.求最长回文串的长度 LongestPalindrome
    202.快乐数 Happy Number
    459.(KMP)求字符串是否由模式重复构成 Repeated Substring Pattern
    326.是否为3的平方根 IsPowerOfThree
    231.是否为2的平方根 IsPowerOfTwo
    461.求两个数字转成二进制后的“汉明距离” Hamming Distance
    206.反转单链表 Reverse Linked List
    448. 数组中缺少的元素 Find All Numbers Disappeared in an Array
    常见表单元素处理
  • 原文地址:https://www.cnblogs.com/sonng/p/5357328.html
Copyright © 2011-2022 走看看