sql 语法重点提要

sql:Structured Query Language,用于对结构化数据(关系型数据库)做CURD 操作。

关系数据库表内字段的关系,表与表之间的关系可以理解为对现实世界的建模。

表与表之间的关系:一对一、一对多(一个表的一条记录对应另一个表的多条记录)、多对多。

主键:每个表必有主键,可以由一个或多个列共同组成,不允许重复;数据库自动为逐渐建立索引(由多个列组成的主键称为联合主键)。

索引:是对数据库一个或多个列做预先排序的数据结构。使用索引可以让数据库不必扫描整个表,而直接定位到符合条件的记录,大大加快查询速度。索引的效率取决于列的值是否散列,即该列的值越不相同,索引效率越高,列的值重复的越多,索引效率越低。

sql 重要元素:

  • select column1, column2
  • from column1, column2
  • where condition1 (and or not) condition2
  • order by column1, column2
  • group by column1, column2
  • limit m offset n :限制返回的条数,以及返回数据的起始位移
  • 逻辑连接:and,or,not
  • 聚合函数:count,avg,sum,min,max

并列的字段用逗号分隔,别名用空格分隔

from多表查询:from table1, table2,通过from 多个表实现的多表查询,返回的是多个表的笛卡尔乘积

join 多表查询:先确定主表(select table),根据条件(on condition)把从表(join table)的字段连接到主表上。可以join 多个从表,使用多个 join … on … 子句即可

  • inner join table on condition
  • left outer join
  • right outer join
  • full outer join

insert into table (col1, col2) values (value1, value2), (value1, value2);

updata table set col1=value1, col2=value2 where condition
(如果where选择出多条语句,则所有被选中的语句都会被update)

delete from table where condition

MySQL Client的可执行程序是mysql,MySQL Server的可执行程序是mysqld。mysql client 通过 TCP 连接与mysql server 通信。

replace into table (col1, col2) values (value1, value2); 如果记录不存在就直接插入,否则先删除再插入

事物:把多条sql语句作为一个整体执行,要么全部全执行,要么全不执行。事物具有ACID特性。
Begin; sql1; sql2; commit

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值