前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SQL 基础

SQL 基础

作者头像
赵哥窟
发布2019-01-03 15:31:20
2980
发布2019-01-03 15:31:20
举报
文章被收录于专栏:日常技术分享
LIKE

我们希望从上面的 “Persons” 表中选取居住在以 “N” 开始的城市里的人: 我们可以使用下面的 SELECT 语句:

代码语言:javascript
复制
SELECT * FROM Persons  WHERE City LIKE 'N%'

提示:"%" 可用于定义通配符

image.png

NOT

通过使用 NOT 关键字,我们可以从 “Persons” 表中选取居住在不包含 “lon” 的城市里的人: 我们可以使用下面的 SELECT 语句:

代码语言:javascript
复制
SELECT * FROM Persons WHERE City NOT LIKE '%lon%'

我们希望从上面的 “Persons” 表中选取名字的第一个字符之后是 “eorge” 的人: 我们可以使用下面的 SELECT 语句:

代码语言:javascript
复制
SELECT * FROM Persons WHERE FirstName LIKE '_eorge'

我们希望从上面的 “Persons” 表中选取居住的城市以 “A” 或 “L” 或 “N” 开头的人: 我们可以使用下面的 SELECT 语句:

代码语言:javascript
复制
SELECT * FROM Persons WHERE City LIKE '[ALN]%'

居住的城市不以 “A” 或 “L” 或 “N” 开头的人

代码语言:javascript
复制
SELECT * FROM Persons WHERE City LIKE '[!ALN]%'
CASE

CASE语句不写ELSE子句时,执行结果是NULL。

简单CASE表达式:

代码语言:javascript
复制
CASE sex 
    WHEN '1' THEN '男'
    WHEN '2' THEN '女'
ELSE '其他' END

搜索CASE表达式:

代码语言:javascript
复制
CASE 
    WHEN sex = '1' THEN '男'
    WHEN sex = '2' THEN '女'
ELSE '其他' END

UPDATE使用CASE

代码语言:javascript
复制
UPDATE products
SET prod_price = CASE 
    WHEN prod_price < 4 THEN prod_price + 0.51
    WHEN prod_price > 11 THEN prod_price - 0.99
    ELSE prod_price
END

CASE语句判断表达式

代码语言:javascript
复制
SELECT course_name
    , CASE 
        WHEN course_id IN (
            SELECT course_id
            FROM opencourses
            WHERE month = 200706
        ) THEN 'O'
        ELSE 'X'
    END AS '6月'
    , CASE 
        WHEN course_id IN (
            SELECT course_id
            FROM opencourses
            WHERE month = 200707
        ) THEN 'O'
        ELSE 'X'
    END AS '7月'
    , CASE 
        WHEN course_id IN (
            SELECT course_id
            FROM opencourses
            WHERE month = 200708
        ) THEN 'O'
        ELSE 'X'
    END AS '8月'
FROM coursemaster;
INNER JOIN

交集 内连接

代码语言:javascript
复制
SELECT * FROM table_a
INNER JOIN table_b ON table_a.id = table_b.id;

image.png

union all

并集 全外连接

代码语言:javascript
复制
SELECT * FROM table_a
INNER JOIN table_b ON table_a.id = table_b.id
UNION ALL
SELECT * FROM table_a
LEFT OUTER JOIN table_b ON table_a.id = table_b.id
WHERE table_b.id IS NULL
UNION ALL
SELECT * FROM table_a
RIGHT OUTER JOIN table_b ON table_a.id = table_b.id
WHERE table_a.id IS NULL

image.png

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.12.28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • LIKE
  • NOT
  • CASE
  • INNER JOIN
  • union all
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档