笑脸符号怎么存入mysql_MySQL基本操作

drop table bb;

查询数据

create table t_student(

`id` int ,

`stuName` varchar(60),

`age` int ,

`sex` varchar(30),

`gradeName` varchar(60)

)

insert into `t_student`

(`id`,`stuName`,`age`,`sex`,`gradeName`)

values('1','张三1',231,'男','一年级');

insert into `t_student`

(`id`,`stuName`,`age`,`sex`,`gradeName`)

values('1','张三2',232,'男','十一年级');

insert into `t_student`

(`id`,`stuName`,`age`,`sex`,`gradeName`)

values('1','张三3',233,'男','十年级');

insert into `t_student`

(`id`,`stuName`,`age`,`sex`,`gradeName`)

values('1','张三4',234,'男','九年级');

insert into `t_student`

(`id`,`stuName`,`age`,`sex`,`gradeName`)

values('1','张三5',235,'男','八年级');

insert into `t_student`

(`id`,`stuName`,`age`,`sex`,`gradeName`)

values('1','张三6',236,'男','七年级');

insert into `t_student`

(`id`,`stuName`,`age`,`sex`,`gradeName`)

values('1','张三7',237,'男','六年级');

insert into `t_student`

(`id`,`stuName`,`age`,`sex`,`gradeName`)

values('1','张三8',238,'男','五年级');

insert into `t_student`

(`id`,`stuName`,`age`,`sex`,`gradeName`)

values('1','张三9',239,'男','四年级');

insert into `t_student`

(`id`,`stuName`,`age`,`sex`,`gradeName`)

values('1','张三10',2310,'男','三年级');

insert into `t_student`

(`id`,`stuName`,`age`,`sex`,`gradeName`)

values('1','张三11',2311,'男','二年级');

查询所有字段

select 字段1,字段2,字段3....from 表名;

select * FROM 表名;

查询制定字段

select 字段1,字段2 。。 from 表名;

where 条件查询

select 字段... from 表名 where 条件表达式。

带IN关键字查询

select 字段1,字段2,字段3... from 表名 where 字段[NOT] IN (元素1,元素2,元素3);

select * from t_student where age in (231,232);

查询年龄为231,232 的数据。其他不会别查出。

not in 不在 231 232 的

带 between and

的范围

select 字段1,字段2,字段3... from 表名 where [not] between 取值1 and

取值2;

select * from t_student where age (not相反) between 231 and 239

;查询范围

带LIKE 的模糊查询

select * from 表名 wherr 字段 like '字符创';

空值查询

select * from 表名 where 字段 is[NOT] null;

带AND的多条件查询

select * from 表名 字段 where 条件表达式 and 。。。

带OR查询的

带 DISTINCT

去重复查询

select distinct 字段名 from 表名;

排序

order by 属性名 [DESC|asc]

Group by分组查询

GROUP BY 属性名 [having

条件表达式][WITH ROLLUP]

1.单独使用(毫无意义)

2.与GROUP_CONCAT()函数一起使用:

SELECT

gradeName,GROUP_CONCAT(stuName) FROM t_student GROUP BY

gradeName;

3.与聚合函数一起使用。

SELECT

gradeName,COUNT(stuName) FROM t_student GROUP BY

gradeName;

4.与HAVING一起使用(限制输出的结果)

SELECT

gradeName,COUNT(stuName) FROM t_student GROUP BY gradeName HAVING

COUNT(stuName)>1;

5.与WHTH ROLLUP

一起使用(最后加入一个总和行);

LIMIT 分页查询

select * from 表名 limit 初始页,记录数;

使用聚合函数查询

COUNT()函数

1.count()函数用来统计记录的条数;

2.与goupe by 关键字一起使用;

sum()函数

1.SUM()函数是求和函数;

2.与GOUPE BY 关键字一起使用;

AVG()函数

1.AVG()函数是求平均数函数;

与GOUPE BY 关键字一起使用;

MAX()函数

1.MAX()函数是求最大值的函数;

2.与GOUPE BY 关键字一起使用;

MIN()函数

1.MIN()函数是求最小值的函数; 2.与GOUPE BY 关键字一起使用;

链接查询

链接查询是将连个或者两个以上的表按照某个条件连接起来,从中选取需要的数据。

SELECT

tb.id,tb.bookName,tb.price,tb.author,tb.bookTypeId,tby.bookTypeName

FROM t_book tb,t_bookType tby WHERE tb.bookTypeId = tby.id;

自链接

select e.ename,p.ename

from emp e,emp p

where e.empno = p.mgr

核心:通过别名,将同一张表视为多张表

自连接存在的问题

不适合操作大表

层次查询就是一张表

内链接查询

内链接查询是一种常用的链接。内链接查询可以查询两个或者两个以上的表;

外链接查询

外链接查询可以查出某一张表的所有信息;

select 属性名列表 from 表名1 left|right join 表名 on 表名1.属性 = 表名2.属性

左链接查询

left join

SELECT tb.id,tb.bookName,tb.price,tb.author,tt.bookTypeName FROM

t_book tb LEFT JOIN t_bookType tt ON tb.bookTypeId = tt.id

可以查询出'表名1' 的所有的记录,而'表名2' 中 ,只能查询出匹配的记录;

右链接查询

SELECT tt.id,tt.bookTypeName,tb.id,tb.bookName,tb.price,tb.author

FROM t_bookType tt RIGHT JOIN t_book tb ON tt.id =

tb.bookTypeId

可以查询'表名2' 的所有记录,而'表名1'中 只能查询出匹配的记录;

多条件链接查询

子查询

带IN关键字的子查询

一个查询语句的条件可能落在另一个select 语句的查询结果中。

SELECT * FROM t_book WHERE id IN (SELECT id FROM t_bookType);

带比较运算符的子查询

子查询可以使用比较运算符。

SELECT * FROM t_book WHERE price>=(SELECT price FROM

t_pricelevel WHERE priveLevel=1);

带Exists关键字的子查询

假如子查询查询到的记录,则进行外层查询,否则,不执行外层查询。

SELECT * FROM t_book WHERE EXISTS (SELECT * FROM t_booktype)

SELECT * FROM t_book WHERE NOT EXISTS (SELECT * FROM

t_booktype)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值