mysql之单表查询__我自己敲的代码

1、select * from person; #查看全部

2、select name,sex from person;   #只选择name和sex这两列name和sex之间有一个逗号的

3、select name,sex as ‘性别‘ from person #将name和sex两列选择出来,并将sex这一列的列名字改名字为性别,或者是为字段起别名

4、select salary+200 from person;  #将person中的salary列选出来,并将salary中数据都加200

5、select DISTINCT age from person;  #将age这一列中重复的数据去除,或者是去重查询

条件查询: where为关键字,后面跟条件

(1)运算符:

6、select * from person where age>20    #查找出age列中年龄大于20的

另外一些逻辑符号:>=表示大于等于   <>表示不等于   !=也是表示不等于

(2)关键字:null

7、select * from person where dept_id is null; #查找dept_id列中没有值的那个人

另:select * from person where dept_id is null; #查找dept_id列中有值的人

null 用来判断一个数字是不是为空 如上面

‘ ’  用来表示空的字符串

如  select * from person where name=‘‘; #查找name列中没有名字的那一个人

person表中我删除了 一个人的名字,那就必须用 =‘ ‘来查询了 因为name为字符串

(3)区间查询

8、select * from person where age=28 and salary>5000; #查找年龄为28岁且工资大于5k的人

另外的逻辑运算符: or 或 ; and 与;

select * from person where not(age=28 and salary>5000); #查找年龄 不 为28岁且工资大于5k的人    非

9、select * from person where age BETWEEN 18 and 20; #查找age列中年龄在18和20之间的人 BETWEEN 18 and 20表示18和20之间

10、select * from person where id in(1,3,5);  #查找id=1,3,5的人

select * from person where id=1 or id=3 or id=5;  #也可以用这一个代替

11、select * from person where name like ‘e%‘; #查找名字以字母e开头的人

12、select * from person where name like ‘%e%‘; #查找名字中包含字母e的人

13、select * from person where name like ‘%e‘; #查找名字以e结尾的人

14、select * from person where name like ‘__e%‘; #e前边有两个下划线,一个下划线表示一个占位符(任意的字母) 所以两个下划线就表示两个任意的字母,这句话的意思就是查找第三个字母为e的人

15、select * from person where name like ‘____%‘;  #有四个下划线,表示名字为四个字符的人

(4)排序查询

16、select * from person ORDER BY salary;  #将salary中的数据进行排序 

select * from person ORDER BY salary esc;  #将salary中的数据进行排序 默认为esc,esc可以不用写,esc表示正序排序

select * from person ORDER BY salary desc;  #desc表示将salary中的数据进行倒序排序

多条件的要把order by写在后边,如

select * from person where age>20  ORDER BY salary desc;  #将age列中数据大于20的数据选出来之后对salary进行排序

17、中文(uft8)不支持排序, 但是gbk支持中文排序

CONVERT(name USING gbk)  #将name中的数据编码格式转为gbk格式的

select * from person ORDER BY convert(name USING gbk);  #将namme转为gbk之后进行排序,其中字母和汉字是分开排序的

18、show VARIABLES like ‘char%‘; #查询各种编码方式

18、mysql中安装目录中没有my.ini的解决方法:

自己创建一个my.ini  然后把下面的复制进去,再重启服务(net start mysql) 即可

#修改方法:
#1. 创建my.ini文件,放在mysql根路径下
#2. 在该文件中添加以下内容即可:
#3.添加此文件后需要重新启动服务,以保证此文件生效
------------------------------------------------------------
[client]

default-character-set=utf8

[mysql]

#设置mysql客户端默认字符集

default-character-set=utf8

[mysqld]

#设置3306端口

port = 3306

#允许最大连接数

max_connections=200

#服务端使用的字符集默认为8比特编码的latin1字符集

character-set-server=utf8

#创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

#解决mysql在执行sql语句后出现1055错误,sql_mode = only_full_group_by不相容

sql_mode=‘NO_ENGINE_SUBSTITUTION‘

my.ini中的内容

2019.01.05  昨天更改结束了数字信号的考试,考的贼差,考完有种会挂科的感觉,这几天一直在想如果挂科会怎么样,真的是很难过......

今天终于搞定了考试之前没有搞定的Navicat for mysql这个软件,并且学了一些sql语言相关的东西,收获还是很多的

当然晚饭回来看了一下别人给我推荐的电影  重庆森林  王菲真的是好可爱~

haijing in HZ

good night

原文地址:https://www.cnblogs.com/YiYA-blog/p/10226668.html

时间: 2024-10-07 07:16:37

mysql之单表查询__我自己敲的代码的相关文章

跟王老师学MySQL:单表查询

跟王老师学MySQL:单表查询 主讲教师:王少华   QQ群号:483773664 学习内容 查询所有字段 查询指定字段 查询指定记录 带in关键字的查询 带between and关键字的查询 带like关键字的查询 查询空值 带and的多条件查询 带or的多条件查询 查询不重复记录 对查询结果进行排序 单表查询是指从一张表中查询所需要的数据.查询数据时,可以从一张表中查询数据,也可以从多张表中同时查询数据.两者的查询方式上有一定的区别.因为单表查询只在一张表上进行操作,所以查询比较简单. 一.

MySQL之单表查询

一.单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT 限制条数 二.关键字的执行顺序 1.找到表:from 2.拿着where指定的约束条件,去文件/表中取出一条条记录 3.将取出的一条条记录进行分组group by,如果没有group by,则整体作为一组 4.将分组的结果进行having过滤 5.执行select 6.去重 7.将结果按条件排序:order by 8

Mysql数据库单表查询

1.单表查询语法 #查询数据的本质:mysql会到你本地的硬盘上找到对应的文件,然后打开文件,按照你的查询条件来找出你需要的数据.下面是完整的一个单表查询的语法 select * from,这个select * 指的是要查询所有字段的数据. SELECT distinct 字段1,字段2... FROM 库名.表名 #from后面是说从库的某个表中去找数据,mysql会去找到这个库对应的文件夹下去找到你表名对应的那个数据文件,找不到就直接报错了,找到了就继续后面的操作 WHERE 条件 #从表中

Mysql的单表查询

MySQL单表查询 汇总 单表查询的语法及关键字执行的优先级 from 1.找到表:from where 2.拿着where指定的约束条件,去文件/表中取出一条条记录 group by 3.将取出的一条条记录进行分组group by,如果没有group by,则整体作为一组 select 4.执行select(去重) distinct having 5.将分组的结果进行having过滤 order by 6.将结果按条件排序:order by limit 7.限制结果的显示条数 简单查询 创建表

【MySQL】单表查询 -- 2019-08-11 19:25:09

原文: http://106.13.73.98/__/25/ 目录 where 约束 group by 分组查询 聚合函数 having 过滤 order by 查询排序 limit 限制查询的记录数 # 语法 select 字段1, 字段2 ... from 表名 where 条件 group by field having 筛选 order by field limit 限制条数 重点在于关键字的执行优先级:from where group by having select distinct

【MySQL】单表查询

" 目录 where 约束 group by 分组查询 聚合函数 having 过滤 order by 查询排序 limit 限制查询的记录数 # 语法 select 字段1, 字段2 ... from 表名 where 条件 group by field having 筛选 order by field limit 限制条数 重点在于关键字的执行优先级:from where group by having select distinct order by limit 1. 找到表:from 2

Mysql ==》 单表查询

主要内容: 1.查询语法 2.关键字的执行优先级 3.简单查询 4.单条件查询 5.where 约束 6.分组查询: group by 7.使用聚合函数查询 8.having 过滤 9.查询排序:order by 10限制查询的记录数:limit 11.使用正则表达式查询 先建数据库(文件夹).后表(文件)带字段,后记录(内容). company.employee 员工id id int 姓名 emp_name varchar 性别 sex enum 年龄 age int 入职日期 hire_d

MySQL 之 单表查询

一.简单查询 -- 创建表DROP TABLE IF EXISTS `person`;CREATE TABLE `person` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, `age` tinyint(4) DEFAULT '0', `sex` enum('男','女','人妖') NOT NULL DEFAULT '人妖', `salary` decimal(10,2) NOT NULL DEFAUL

Mysql 语句单表查询

一基本查询 -- 创建商品表 CREATE TABLE products( pid INT PRIMARY KEY AUTO_INCREMENT, pname VARCHAR(20), price DOUBLE ); -          查询的格式: select [distinct]*(所有)|字段名,...字段名 from 表名 [where 条件过滤] -- 查询指定字段信息pname,price SELECT pname,price FROM products; -- 去除金额重复的记