mysql基本语句
来源:互联网 发布:网络电视直播在线看 编辑:程序博客网 时间:2024/06/15 04:15
1:数据库是一种软件可以动态的对数据库软件创建数据库,进行修改和查询
2:常用的数据库:mysql,oracle,sqlserver,DB2数据库
3:怎么启动:我的电脑-右键-管理-服务和应用程序-服务-找到对应数据库的服务
4:mysql的几个命令:
1:show databases:显示所有的数据库
2:use databasename:使用某个数据库
3:show tables:显示某个数据库中的表
5:数据库中的表:相当于java语言中的javabean储存具有相同属性的一类事物(百度javabean);
6:SQL(结构化查询语言)全称
7:DDL语句:创建或者删除表,索引等数据库对象的语句
1:创建表:create table 表名(column1 datatype)列:create table school(id int(10),name varchar(20));
2:删除表:drop table 表名列:drop table school;
8:表中添加数据:insert into 表名 (values)(添加的数据,几项对应几个数据)列insert into student values (NULL,"kk");(两项,第一项自增所以null)
9:查询数据:具体某一项:select 字段名 from 表名 查询全部:select * from 表名;
10:给查询出来的字段去别名:select coll(as) 别名1,col2
2:
1,查:SELECT * from user
2,增:INSERT into user (username,userpassword)VALUES("ii","ii")
3,删:DELETE from user where userid = 9
1,改:UPDATE user set username="gg",userpassword="gg" WHERE userid=5
3:distinct关键字:消除结果集中的重复信息,只显示一行。1:当字段为*(所有)时意思为所有字段都相同才会消除重复的。
2:语法:select distinct col1,col2from 表名 col1和col2里面的内容相同才会消除重复的
4:where条件:=,!=,<>(不等于),<,>,is null ,is not null 区别:is null 在添加数据的时候你在对应栏位会看见一个null
like ,not like %:表示0个或多个字符(不常用)_代表一个字符 逻辑符合条件关键字: not:相反 and:和(两个同时满足) or:或者(满足其中一个)
列:SELECT DISTINCT * FROM user
SELECT * from user
SELECT DISTINCT username 姓名,userpassword 密码 from user
select * from user where username is not null
select * from user where username is null
select * from user where userid <>6
select * from user where userid <6
select * from user where userid !=6
SELECT * from user where username like "_1%"
5:对查询结果排序
1:语法::select col1,col2 from 表名 (where (添加条件时用)) order by colun(asc,desc)(默认)升序,降序。只作用前面一个字段。
列:select * from emp ORDER BY deptno desc ,sal DESC :不写默认为升序 判断先在第一个进行升序后如果有相同的则在执行后面的降序排序。
6:常用函数: 1:lower :把字段转换成小写 列:select LOWER(ename) y(取新的字段名) from emp
2:upper:把字段转换成大写 列:select upper(ename) y(取新的字段名) from emp
3:concat:连接两个字段。列:SELECT CONCAT(sal,deptno) (取新的字段名) from emp
4:length:求字段的长度。列:select length (ename) from emp
5:substr:(字段或字符串,start,length):字符串,start从1开始截取长度
列:select ename,substr(ename,2,1)from emp 意思是:截取第二个字母并大写
6:round(number,n):n指定四舍五入到小数点后第几位,可以用负数指定小数点前面的第几位
列:select round(3.1415,1)from 表名;
7:to_number:把数字字符串转换成数字 列:select to_number(‘3.1415’)+5.1314 from 表名(oracle 有 mysql不是这个函数)
8:to_char:按指定格式,格式化字符串:select empno,to_char(sal,‘L999,999,999,99’)from emp;(oracle 有 mysql不是这个函数)
9:to_date:把字符串转换成,数据库内部的日期格式 (oracle 有 mysql不是这个函数)
7:分组函数:1:avg(字段):平均数 2:max(字段):最大值 3:min(字段):最小值 4:sum(字段):求和 5:count(字段):计算该字段的个数;
列:1:SELECT AVG (sal) from emp
2:SELECT max (sal) from emp
3:SELECT min (sal) from emp
4:SELECT sum (sal) from emp
5:SELECT count (sal) from emp
分组函数不能用在where条件中,只能用在select后面。
8:分组:group by :语法:select col1,col2... from 表名 where 条件 group by column(col1,col2)
列:SELECT deptno from emp group by deptno1 意思:从emp表里查询deptno通过deptno1进行分组。
列:一个班的学生名叫某某。
9:将两个表的内容连接在同一个表中(前提有外键关系):
1:列:select 表1.字段名,表1.字段名2,表2.字段名1,表2.字段名2 from 表1 定义表1的简称 INNER JOIN 表2 定义表2的简称 on 表1的简称.外键字段名 = 表2的简称.外键字段名 结果:表1字段名1+表1字段名2+表2字段名1+表2字段名2 所组成的一张虚拟表。
2:列:select 表1.*,表2.* from 表1 定义表1的简称,表2 定义表2的简称 where 表1的简称.外键字段名=表2的简称.外键字段名
经典案列:
第一步:select * from emp
第二步:select * from dept
第三步:select deptno sum(sal),count(empno),avg(sal) from emp group by deptno
第四步:select xin.*,d.dname from (SELECT deptno,COUNT(sal),SUM(emp.sal) from emp group by deptno) xin INNER JOIN dept d on xin.deptno = d.deptno;
10:having: select deptno,sum(sal) from emp group by deptno having 分组函数having起到过滤的作用 and or BETWEEN 2000 AND2500(2000~2500之间)
11:分页:mysql:关键字limit ;
列:SELECT empno from emp order by empno LIMIT 2,3
- mysql基本语句
- mysql基本语句
- mysql基本sql语句
- mysql操作基本语句
- MySQL基本SQL语句
- MYSQL 基本语句
- mysql基本语句
- mysql基本语句
- mysql基本语句大全
- Mysql基本语句练习
- mysql 基本语句
- MySQL的基本语句
- mysql基本语句
- MySQL基本SQL语句
- mysql基本语句1
- MySQL基本语句总结
- MySQL 基本操作语句
- MySQL基本语句
- Codeforces Round #414 C. Naming Company 贪心
- LLDB调试
- 简单易懂的github使用教程
- Window显示流程
- 框架和原生
- mysql基本语句
- java 内存机制详解 (new 操作的执行原理)
- Spark入门(2)——生态系统
- 端口的状态详解
- linux命令学习与理解
- java基础知识--IO篇
- I2C 时序详解,精确到每一个时钟
- struts2入门,从下载到简单的配置
- 二叉树的建立和遍历