数据库学习纪要(二十三):MySQL-3-SELECT

二、查询SELECT
1、SELECT * FROM data_list WHERE age = '19'; \\注:在SQL中只有DEC和INT不需要'',其余字段(VARCHAR、CHAR、BOLB、TIMEDATE)均算文本都需要加''。此处age = '19'是因为定义数据库表时,将age字段定义为了VARCHAR。

2、SELECT id, sex, region FROM data_list WHERE car = 'YES';

3、SELECT id FROM data_list WHERE sex = 'MALE' AND car = 'YES' AND age < '19';

4、通配符:1)'%',它是任意数量的未知字符的替身
 2)'_',它是一个未知字符的替身
3)与like搭配使用

5、SELECT * FROM data_list WHERE age BETWEEN 30 AND 31;查询结果age包含30和31、查询顺序很重要,age BETWEEN 31 AND 30将无法查询到任何数据

6、SELECT * FROM data_list WHERE age IN/NOT IN (30, 31, 32);

7、SELECT RIGHT(id, 2) FROM data_list;
//RIGHT从列的右侧开始,LEFT从列的左侧开始
//id为列名

8、SELECT SUBSTRING_INDEX(id, ',', 1) FROM data_list;
//SUBSTRING_INDEX:寻找单引号离的字符串(本例为逗号),然后取出它前面的所有内容
//1是指第一个逗号,如果是2,则寻找第二个逗号,然后取它前面的所有内容

10、文本类型函数
1)SUBSTRING(your_string, start_position, length)
2)UPPER(your_string)\LOWER(your_string)把字符串修改为大写或小写
3)REVERSE(your_string)反转字符串离的字符排序
4)LTRIM(your_string)\RTRIM(your_string)分别清除字符左侧(前面)和右侧(后面)的多余空格
5)LENGTH(your_string)返回字符串离的字符数量

11、排序
SELECT title, category FROM movie_table
WHERE 
title LIKE 'A%'
AND
category = 'family'
ORDER BY title;

SELECT * FROM movie_table
ORDER BY category, purchased, title;
//降序排列:在列名后加上关键字DESC
//升序ASCENDING、降序DESCENDING
//ORDER BY title ASC, purchased DESC;

12、用GROUP BY完成分组加总
SELECT sex, SUM(age) FROM data_list
GROUP BY sex;

组合使用:

SELECT first_name, SUM(sales) FROM cookie_sales
GROUP BY first_name
ORDER BY SUM(sales) DESC;

13、去重
SELECT DISTINCT sale_date FROM cookie_sales
ORDER BY sale_date;

去重计数:
SELECT COUNT(DISTINCT sale_date) FROM cookie_sales;

14、LIMIT查询结果的数量
LIMIT 0, 4
//0是查询结果的起始位置,SQL从0开始计数。4是返回查询结果的数量
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值