数据库和sql语句:sql操作数据库
sql语句和连接工具:1、没有必然联系2、连接工具可以把一些界面操作,转化为sql
连接工具和数据库关系:把命令转化为可视化的操作
连接数据库媒介:1、navicat2、sqlyog3、datagrip
数据库(database):1、mysql2、SQLServer3、Oracle
数据库的操作:增、删、改、查
数据的查:关键字:select
语句:select * from
筛选:where
有条件查询语句:select * from 表名 where 字段名 条件 对比对象
条件:</>/<=/>=/=/!=/in/between and/isnull/like
两张表关联:jion on
语句:select * from 表名 jion 表名 on 主键 = 次键
主键与次键的关系:次键在主键的字段名后
数据的增:关键字:insert into
语句:一条: insert into 表名 (字段1,字段2,..) value(值1,值2,...) 多条的: insert into 表名 (字段1,字段2,..) values(值1,值2,...)
从另一张表中插入到当前表:insert into 表名 (字段1,字段2,..) 查询语句
数据的改:修改指定数据:update 表名 set 字段名1=值1,字段名2=值2,... where 条件修改全表数据:update 表名 set 字段名1=值1,字段名2=值2,...
数据的删:删除指定数据:delete from 表名 where 条件 清空表:1、delete from 表名(只删数据)2、truncate table 表名(既删除数据又删除存储空间)
其他数据库对象:
增:库:create database 库名/表:create table 表名;
备份表:create table 新表名 as select * from 旧表名;
只备份表结构:create table 新表名 as select * from 旧表名 where 1=2;
删:库:drop database 库名;/表:drop table 表名;
改:表:alter table 表名;
查:库:show databases;/表:show tables;(查询所有表名)/desc 表名(查看表结构)
sql解题思路&sql的执行顺序
-- 1、确定是增删改查哪一种,写 select * from
-- 2、确定哪张表 写表名
-- 3、确定有没有进行条件筛选 where
-- 4、确定条件内容 字段 条件 对比对象 如果有多条件,连接符选哪个
-- 5、是否需要分组 group by 确定分组字段
-- 6、是否需要对分组后的结果的进行筛选 having
-- 7、确定展示字段 select
-- 8、是否需要对查询结果去重 distinct
-- 9、是否需要排序 order by 确定排序字段 确定排序规则
-- 10、确定是否需要分页展示 limit 取第n到m条数据 limit n-1,m-(n-1)
语法格式
select distinct 字段 from 表名 where 筛选条件 group by 分组字段 having 二次筛选的条件 order by 字段 limit n,m;
语法格式上细节
关键字的位置是固定的
所用到的所有符号都是英文符号
符号成对出现,成对写:''/()
不同类型的东西用空格分隔
同种类型的东西,用英文逗号分隔
筛选条件用逻辑运算符
字段值 :数字 (直接写) 字符串、日期、时间 (用单引号引起来)
一个SQL语句结束,以分号结尾