Mysql 增删改查的使用

一、增

一般使用是这样的:

INSERT INTO table_name (1,2,...) VALUES (1,2,....)

例:
在这里插入图片描述

'''
_activity_type: 你要把数据插入的表名称
_type_name, _dept_code,_tenant_id:这是表中的列名 (需要插入哪一列,放哪列的名称)
123, 123,330106:这是插入的值
# 注:值和列是对应,如下方:_type_name = 123
'''
INSERT INTO _activity_type(_type_name, _dept_code,_tenant_id) VALUES (123, 456,330106)

二、删

正常情况,很少用删除,但是如果用的话,可要小心,别搞个,删库跑路就行…

删除:delete

删除的时候,记得尾部必须加where条件,如果你就想删库,那无所谓了

'''
_applet_user:代表删除内容的库名
_user_name:代表列名
"测试7":删除条件 (即:列内某个值)
'''
# 使用like 进行模糊定位,可以删除所有匹配的
DELETE FROM _applet_user WHERE _user_name LIKE "测试7%" ;

#  删除指定的某一条数据
DELETE FROM _applet_user WHERE _user_name = "测试7" ;

三、改

更新(改):update
语法:UPDATE 表名称 SET 列名称 = 新值 WHERE ID = 某值
'''
_applet_user:表名称(即:需要修改内容的表)
_user_name:值 (即:第一个是你想更改成什么样;第二个是本来什么样)
'''

UPDATE _applet_user  SET _user_name = 'Fred' WHERE _user_name = 'Wilson'

四、查

基本都是这个用的多,其他都算辅助,这个算主力!
1、单表查询

#  * 代表所有,可以查询所有的,显示表中所有数据
SELECT * FROM	_activity_centre 

#  where 限制条件,查询出的内容只能是name等于Wilson
SELECT * FROM	_activity_centre where _user_name = 'Wilson'

#  like 模糊查询,显示所有_user_name 包含有 W 的数据
SELECT * FROM	_activity_centre where _user_name like 'W%'

#  order by   asc  正序排列
SELECT * FROM	_activity_centre where _user_name like 'W%' order by _create_time asc

#  order by   desc  倒序排列
SELECT * FROM	_activity_centre where _user_name like 'W%' order by _create_time desc

#  GROUP BY  分组查询(根据你提供的条件,把相同的数据分到一起,一般统计的时候用到)
SELECT * FROM	_activity_centre where _user_name like 'W%' GROUP BY _create_time 

#  count() 统计,统计分好组的内容,每个有多少数量
SELECT count(*FROM	_activity_centre where _user_name like 'W%' GROUP BY _create_time 

# max()  查询最大值
SELECT max(_user_age) FROM	_activity_centre 

# min()  查询最小值
SELECT min(_user_age) FROM	_activity_centre   

# limit  设定返回内容的数量 (这里设定只返回10条数据)
SELECT * FROM	_activity_centre where _user_age like "'2%'" desc limit 10

#  as  别名 打印出来名称显示就是 “最小”
SELECT min(_user_age) as 最小 FROM	_activity_centre 
#  简写 (记得中间有空格,那样默认后面就是别名)
SELECT min(_user_age) 最小 FROM	_activity_centre 

2、多表联查

#  join on 联查
#  _activity_centre :表1
# _activity_type :表2
# a._activity_type_id = b.id :表与表的关联(即:找到表2与表1关联的一个值)

SELECT 
	a._activity_name 名称,
	b._type_name 类型,
	a._create_time 创建时间 
FROM
	_activity_centre a
	INNER JOIN _activity_type b ON a._activity_type_id = b.id 
ORDER BY
	a.zjy_create_time DESC LIMIT 20
#  left join   on 左链接
#  表b 依附 表a  进行查询 主查是表a

SELECT 
	a._activity_name 名称,
	b._type_name 类型,
	a._create_time 创建时间 
FROM
	_activity_centre a
	LEFT JOIN _activity_type b ON a._activity_type_id = b.id 
ORDER BY
	a.zjy_create_time DESC LIMIT 20
#  RIGHT JOIN   on 右链接
#  表a 依附 表b  进行查询 主查是表b

SELECT 
	a._activity_name 名称,
	b._type_name 类型,
	a._create_time 创建时间 
FROM
	_activity_centre a
	RIGHT JOIN _activity_type b ON a._activity_type_id = b.id 
ORDER BY
	a.zjy_create_time DESC LIMIT 20
#  嵌套查询
#  sql是先执行()内的
#  如果在表与表之间找到对应条件,可以一直嵌套下去
#  ()查询出下个嵌套内对应的条件,然后进行链接
SELECT
	_activity_name,
	_create_time 
FROM
	_activity_centre 
WHERE
	_activity_type_id IN ( SELECT id FROM _activity_type )

#  还有一种查询:把你查询出的表,临时变成一个全新的表,来进行链接使用

#  ():括号内是查询一个表所得的内容,然后,括起来后,可以join 把他变成一个临时的全新表
SELECT
	a.id,
	a._dept_code,
	a._dept_name,
	b.sl
FROM
	_manage_deptment a
	LEFT JOIN
	(
	SELECT _dept_id, count(id) sl FROM _volunteer_troops WHERE _deleted = "0" and _troops_type = "1" GROUP BY
	_dept_id
	) b
	on a.id = b._dept_id
WHERE
	a._deleted = "0" 
	AND a._dept_code LIKE "6%"

好了,今天为大家分享这么多!!有帮助、有喜欢的请点赞…谢谢!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值