数据库sql的增删查改

 数据库sql的增删查改

 

查询

四张表     地址表:store, 县区表:areas,省表:provinces,市表:cities

concat 拼接字符,因为我要查下店铺的省市区我要查下四张表,表之间进行关联, 店铺下的地址是字符串之间使用了空字符串隔开, mysql函数中没有分割函数的方法, 然后有一个FIND_IN_SET 

FIND_IN_SET(str,strlist)

str 要查询的字符串
strlist 字段名 参数以”,”分隔 如 (1,2,6,8)
查询字段(strlist)中包含(str)的结果,返回结果为null或记录

假如字符串str在由N个子链组成的字符串列表strlist 中,则返回值的范围在 1 到 N 之间。 一个字符串列表就是一个由一些被 ‘,’ 符号分开的子链组成的字符串。如果第一个参数是一个常数字符串,而第二个是type SET列,则FIND_IN_SET() 函数被优化,使用比特计算。 如果str不在strlist 或strlist 为空字符串,则返回值为 0 。如任意一个参数为NULL,则返回值为 NULL。这个函数在第一个参数包含一个逗号(‘,’)时将无法正常运行。

FIND_IN_SET(2,'1,2,4,7,9,2') 我们想的是,省市区,先观察表先这很重要,相当于先要把省市区表进行三者关联 然后在把这三者中有一个能店铺进行关联,就是4个表都进行关联了 然后我们就要去区那么拿到市进行关联,c.`citycde`=a.`cityCide` , ok之后 把市跟省链接p.`provinceid`= c.`provinceCode`,这样三者就有联系了 最后我们要把三者跟商店进行关联,一般我们住某个地方,会第一想到那个区, 所有我们就要拿区去跟店铺的字符串列表进行关联,这样就相当于四个都进行关联了

 

结果

 

/*1.查询学生表01的成绩语文在60之70的有谁*/

两张表 学生表为student 和成绩表achievement

结果

 

 

a:)内链接

查询两张表公用的数据

方法①:MySQL的语法

关键字:inner join   

SELECT * FROM  `student01`  st

INNER JOIN `class01` cl  ON  st.`student01`= cl.`studentId`

b:)左链接

方法一:MySQL的语法

关键字:left join  

SELECT * FROM  student01

LEFT JOIN class01 ON student01.student01 = class01.studentId

方法②:Oracle的语法

 右(+)连接:(相当于Left Join)

 SELECT * FROM `student01`  st, `class01` cl  

 WHERE st.`student01` =  cl.`studentId`(+);

c:)右链接

方法一:MySQL的语法

关键字:rift  join  

SELECT  *  FROM student01

RIGHT JOIN class01 ON student01.student01 = class01.studentId

新增数据

insert into 表名(列1,列2...列N) values(值1,值2...值N);

修改表数据

update 表名 set 列1 = 值1,列2 = 值2...列N = 值N where过滤条件;

删除数据库表的数据

delete from 表名 where过滤条件 

删除表

drop table 表名;-->删除表的数据与结构

delete from 表名;-->仅删除表的数据,可以回滚rollback; truncate table 表名;-->仅删除表的数据,不可以回滚 

查询语句(有很多的语法的,例如左,右链接,全链接,内链接等)

select 列1,列2,列3...列N 或 * from 表名/(表达式)

[where 过滤条件]

[group by 分组内容]

[having 组内条件]

[order by 排序方式] 

 数据库sql的增删查改

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值