mysql数据库常用sql语句

数据库可以用图形化工具来实现一系列操作,这里涉及一些cmd命令行

首先要配置好环境变量可以全局操作命令,不然只能在mysql的安装目录下进行操作,这里不再叙述

1. 进入数据库:  mysql -u root -p (默认用户名为root,这个与mysql安装时的设置的用户有关,可设置使用不同用户)        

                           退出则用exit指令

2. 看有哪些数据库:   show databases;  (注意每次执行数据库命令时要加‘’;‘’,你也可以设置成其他符号,这里不再叙述)

3. 进入指定数据库 :  use 数据库名;

4. 查看数据库中有哪些表:   show tables;

5. 查看表:(1) desc 表名;   查看数据

                  (2)  show create table 表名;      查看表的细节

 

sql语句:DDL(定义数据库对象,表与列),DML(用于操作数据库表中的记录数据),

                DQL(查询数据),DCL(定义访问权限和安全级别)

 

1.DDL 数据定义语言

注意点:在指定数据库中做表的相关操作,所以要先进入指定的数据库

创建数据库和表

创建数据库 create database 数据库名 character set utf8;    (字符集一般设为utf8)

创建表: 在指定数据库中创建表,所以要先进入指定的数据库

        -- use 数据库名;

        -- create table 表名(列名1(字段) 字段类型[约束条件],列名2 字段类型,...);

               eg:create table students(name varchar(255),age int,gender varchar(25));

修改表名: rename table 原来表名 to 新表名;

修改表的字符集:例如将表字符集改为gbk ,则是 alter table 表名 character set gbk;

删除表:drop table 表;

删除数据库名:drop table 数据库名;

 

修改字段(列)

添加字段:alter table 表名 add 字段名 字段类型;

修改字段名:alter table 表名 change 原始字段名 新的字段名 新数据类型;

修改字段的数据类型:alter table 表名 modeify 字段名 字段类型;

删除字段: alter table 表名 drop 字段名:

 

2.DML 数据操作语言

首先要进入指定的数据库中才能进行操作数据

插入多条数据数据:insert into 表名(列名1,列名2,...)  values (列值1,列值2,...),values (列值1,列值2,...),...

修改更新数据:update 表名 set 列名1=列值1,列名2=列值2,... where 条件;           用where条件对指定数据进行修改

修改数据库密码:

        第一种方式:(1)use mysql;

                              (2)update user set authentication_string=password('密码') where user='root' and Host='localhost';

        第二种方式:mysqladmin -u root = 新密码;

                             然后会让你输入旧密码就可修改

  删除记录:

        第一种:delete from 表名 where 条件;       能找回数据

        第二种:trumcate table 表名;                      创建一个新的表,但是表原来的数据删除了,不能找回数据

 

3.DQL 数据查询语言

    查询数据显示指定字段:select 字段名1,字段名2,... from 表名;    (select * from 表名; 则是显示全部字段)

    条件查询:=(等于),!=(不等于),<>(不等于),<(小于),<=(小于等于),>(大于),>=(大于等于)

                     between ... and   ,   in(set)  (在set集合中)  , is null (为空)  ,is not null (不为空) 

                     and(与), or(或), not(非)

                 eg:select * from 表名 where age in (18,17,19);

    模糊查询:通过关键字查询,格式为 like+通配符

                                        通配符:-(任意一个字符),%(任意0-n个字符)

                       eg: 查询名字中带‘李’的人   select * from 表名 like '%李%';

     字段查询:1. distinct去重 :select distinct 字段名 from 表;     显示指定字段,去掉了重复字段数据

                       2. 对数值型字段进行运算后显示:

                        eg:   select 字段1+字段2 as 新字段名 from 表;       将两字段进行运算后,显示新的字段名

                                (字段1,字段2必须是数值型,若为空则可设置默认值,IFNULL(字段1,数值))

                        eg:    select IFNULL(字段1,0)+IFNULL(字段2,0) as 新字段名 from 表;  默认空字段设为0

     排序:select * from 表名 ORDER BY 字段1 ASC,字段2 DESC,...

                    先按字段1排序,若有字段相同数据,在按字段2进行排序,以此类推    ASC为升序,DESC为降序

   

   聚合函数:对统计的结果进行计算统计  

                    COUNT() : 统计指定列不为null的行数      eg: select count(字段1) from 表 [where 条件];

                    MAX() : 列中最大值             eg: select max(字段1) from 表 [where 条件];

                    MIN() : 列中最小值              eg: select min(字段1) from 表 [where 条件];

                    SUM() : 列的数值和,若不是数值类型则为0       eg: select sum(字段1) from 表 [where 条件];

                    AVG() : 列的平均数,若不是数值类型则为0        eg: select avg(字段1) from 表 [where 条件];

 

                    

展开阅读全文

没有更多推荐了,返回首页