SQL-SELECT基本操作

1、SELECT语句
SELECT *
FROM web_events;
SELECT channel,account_id
FROM web_events;
 
2、LIMIT 限制条件
SELECT *
FROM web_events
LIMIT 15;
##仅返回前15条数据,缩减查询的时间
 
3、ORDER BY
1)单个排序
SELECT id, occurred_at, total_amt_usd
FROM orders
ORDER BY occurred_at
LIMIT 10;
# ORDER BY 在FROM和LIMIT之间
SELECT id, occurred_at, total_amt_usd
FROM orders
ORDER BY occurred_at DESC
LIMIT 10;
#DESC表示降序
 
2)多个排序——先出现先起作用
SELECT *
FROM orders
ORDER BY occurred_at DESC, total_amt_usd DESC
LIMIT 5;
SELECT *
FROM orders
ORDER BY occurred_at, total_amt_usd
LIMIT 10;
 
4、WHERE(需要放在ORDER BY 和WHERE 之前)
1)与数字数据一起使用
SELECT *
FROM orders
WHERE gloss_amt_usd >= 1000
LIMIT 5;
2)与非数字数据一起使用
SELECT name, website, primary_poc
FROM accounts
WHERE name = 'Exxon Mobil';
##不等于
WHERE name != 'Exxon Mobil';
 
5、算术运算符
SELECT id, account_id, standard_amt_usd/standard_qty AS unit_price
FROM orders
LIMIT 10;
##除法中分母为0要如何解决?
 
6、逻辑运算符:LIKE、IN、NOT、AND&BETWEEN、OR
    1)LIKE:可用于进行类似于使用 WHERE 和 = 的运算,但是这用于你可能 不 知道自己想准确查找哪些内容的情况。
SELECT name
FROM accounts
WHERE name LIKE 'C%';  #通配符(%),比如'%one%'/'%s'
 
  2)IN :用于执行类似于使用 WHERE 和 = 的运算,但用于多个条件的情况。
SELECT *
FROM web_events
WHERE channel IN ('organic', 'adwords');
 
  3)NOT:这与 IN 和 LIKE 一起使用,用于选择 NOT LIKE 或 NOT IN 某个条件的所有行。
SELECT name, primary_poc, sales_rep_id
FROM accounts
WHERE name NOT IN ('Walmart', 'Target', 'Nordstrom');
SELECT name
FROM accounts
WHERE name NOT LIKE '%one%';
 
  4)AND & BETWEEN:可用于组合所有组合条件必须为真的运算。
SELECT *
FROM web_events
WHERE channel IN ('organic', 'adwords') AND occurred_at BETWEEN '2016-01-01' AND '2017-01-01'
ORDER BY occurred_at DESC;
#为什么是2017-1-1?是因为 对于单纯的日期数据而言(只包含年月日不包含时间的数据,比如 '2016-12-31'),其默认时间为日期当天的 00:00:00(也就是午夜时分),而 BETWEEN 通常是不包含端点在内的。
 
  5)OR:可用于组合至少一个组合条件必须为真的运算。
SELECT *
FROM accounts
WHERE (name LIKE 'C%' OR name LIKE 'W%')
           AND ((primary_poc LIKE '%ana%' OR primary_poc LIKE '%Ana%')
           AND primary_poc NOT LIKE '%eana%');
#注意多条逻辑语句组合时括号()的使用
 

转载于:https://www.cnblogs.com/kimmywang/p/10835698.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值