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

插一个 删: DELETE *  from  表 where +条件    #删除的时候一定要加条件,即where后边的东西,否则会把表中数据全部都删除掉

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

809a5461686b4089d332ece764e29cd9.png

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

6e460aee3b4f376e748089bb9093e72f.png

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

7bd702d9475ff97cdc1f809c7f7cb858.png

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

e9d8f1c02b496446cf5407eab8aeead1.png

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

select DISTINCT age,name from person;  #必须事age和name中的数据全部都是一样的才会被选出来

001e711d1a271568e4314981ea2b4a4d.png

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

(1)运算符:

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

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

bf969118f4f2dfd2dac16baefab7a85a.png

(2)关键字:null

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

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

ad72ab56fa3a2c156abd786063b548ed.png

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

‘ ’  用来表示空的字符串

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

a5b4c0e553625a0641e4f37ef7fa6e79.png

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

8f4a5e7ada3a06380ff1f9284bdd2778.png

(3)区间查询

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

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

9d18378b041a86318d86fe2f2c72d8e9.png

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

3c911ce19f73aafdf77e3afdd7920c16.png

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

8534d4795f5cf99a6dcef99124923732.png

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;  #也可以用这一个代替

79658b256632c9a7e6ae5faa11aad96b.png

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

4ee4810922bb1940c85530e057e3d42f.png

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

dc6dd2b7790212c4f42bf96d0a92785a.png

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

15bdc9864e27e5a93aff513db5f1c609.png

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中的数据进行排序

84542e906de8d6c8a7e9684d81418ac2.png

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

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

2381644cb53ff3725a171547b3a7548b.png

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

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

e5d2aae7edbf57b7e21192a9f482f959.png

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

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

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

5c3784bf64c61814011ad9a7ebd42862.png

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

037ea392ac43e37fab863f7ae440e1ac.png

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

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

a008f83e406839274d7f51d0668cb649262.jpg

04e3d48b18f96de7345bdcc0dd02e70758e.jpg

#修改方法:

#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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值