美文网首页
mySql基础语句

mySql基础语句

作者: 四月天__ | 来源:发表于2019-03-01 17:30 被阅读4次
    1、登录 mysql -uroot -p 回车后输入 密码
    2、查询所有数据库 show databases;
    3、新建数据库 create database <数据库名>;
    4、使用某个数据库 use <数据库名>;
    5、删除数据库drop database <数据库名>;
    6、查询某个数据库里所有表show tables;
    7、新建一张表CREATE TABLE table_name (column_name column_type);
    8、删除一张表DROP TABLE table_name ;
    9、插入数据 INSERT INTO 表的名字(列名a,列名b,列名c) VALUES(值1,值2,值3);
    10、andorbetween
    11、INNOT IN,用于筛选“在”或“不在”某个范围内的结果,比如说我们要查询在 dpt3 或 dpt4 的人:
    12、LIKE 用于实现模糊查询,常见于搜索功能中。

    和 LIKE 联用的通常还有通配符,代表未知字符。SQL中的通配符是 _ 和 % 。其中 _ 代表一个未指定字符,% 代表不定个未指定字符
    比如,要只记得电话号码前四位数为1101,而后两位忘记了,则可以用两个 _ 通配符代替:
    另一种情况,比如只记名字的首字母,又不知道名字长度,则用 % 通配符代替不定个字符:

    13、ORDER BY 排序使用 ,还会配合 ASCDESC即升序和降序。查询结果默认升序排序
    14、内置函数和计算
    15、子查询
    SELECT of_dpt,COUNT(proj_name) AS count_project FROM project GROUP BY of_dpt
    HAVING of_dpt IN
    (SELECT in_dpt FROM employee WHERE name='Tom');
    
    16、修改表名字
    RENAME TABLE 原名 TO 新名字;
    
    ALTER TABLE 原名 RENAME 新名;
    
    ALTER TABLE 原名 RENAME TO 新名;
    
    17、对列的修改
    17.1、增加一列
    ALTER TABLE 表名字 ADD COLUMN 列名字 数据类型 约束;
    或:
    ALTER TABLE 表名字 ADD 列名字 数据类型 约束;
    
    ALTER TABLE employee ADD height INT(4) DEFAULT 170;
    

    新增列默认放在最右边,如果要把增加的列插入在指定位置,则需要在语句的最后使用AFTER关键词(“AFTER 列1” 表示新增的列被放置在 “列1” 的后面)。

    ALTER TABLE employee ADD weight INT(4) DEFAULT 120 AFTER age;
    

    如果想放在第一列的位置,则使用FIRST关键词,如语句:

    ALTER TABLE employee ADD test INT(10) DEFAULT 11 FIRST;
    
    17.2 删除一列
    ALTER TABLE 表名字 DROP COLUMN 列名字;
    
    或: ALTER TABLE 表名字 DROP 列名字;
    
    17.3 重命名一列
    ALTER TABLE 表名字 CHANGE 原列名 新列名 数据类型 约束;
    ALTER TABLE employee CHANGE height shengao INT(4) DEFAULT 170;
    

    18、 对表的内容进行修改

    18.1、修改表中某个值或某列某个字段值
    UPDATE 表名字 SET 列1=值1,列2=值2 WHERE 条件;
    

    比如,我们要把 Tom 的 age 改为 21,salary 改为 3000:

    UPDATE employee SET age=21,salary=3000 WHERE name='Tom';
    
    18.2、删除一行记录
    DELETE FROM 表名字 WHERE 条件;
    

    19、索引

    20、视图

    视图是从一个或多个表中导出来的表,是一种虚拟存在的表。它就像一个窗口,通过这个窗口可以看到系统专门提供的数据,这样,用户可以不用看到整个数据库中的数据,而只关心对自己有用的数据。

    注意理解视图是虚拟的表:

    • 数据库中只存放了视图的定义,而没有存放视图中的数据,这些数据存放在原来的表中;
    • 使用视图查询数据时,数据库系统会从原来的表中取出对应的数据;
    • 视图中的数据依赖于原来表中的数据,一旦表中数据发生改变,显示在视图中的数据也会发生改变;
    • 在使用视图的时候,可以把它当作一张表。
    CREATE VIEW 视图名(列a,列b,列c) AS SELECT 列1,列2,列3 FROM 表名字;
    

    现在我们创建一个简单的视图,名为 v_emp,包含v_name,v_age,v_phone三个列:

    CREATE VIEW v_emp (v_name,v_age,v_phone) AS SELECT name,age,phone FROM employee;
    

    查询的时候 可以把视图看作一张表,直接查询就行
    select * from v_emp

    21、数据导出

    22、备份

    23、数据导入

    24、输入提示符

    image.png

    当我们输入一个 '号,而后面没有结束符号的话,后面所有的输入是会被忽略的,这时的处理方法是输入关闭的引号字符(这样 mysql 知道你完成了字符串),然后输入\c(退出当前的命令):

    mysql> SELECT * FROM my_table WHERE name = 'Smith AND age < 30;
        '> '\c
    mysql>
    
    image.png

    CHARVARCHAR 的区别: CHAR 的长度是固定的,而 VARCHAR 的长度是可以变化的,比如,存储字符串 “abc",对于 CHAR(10),表示存储的字符将占 10 个字节(包括 7 个空字符),而同样的 VARCHAR(12) 则只占用4个字节的长度,增加一个额外字节来存储字符串本身的长度,12 只是最大值,当你存储的字符小于 12 时,按实际长度存储。

    ENUM和SET的区别: ENUM 类型的数据的值,必须是定义时枚举的值的其中之一,即单选,而 SET 类型的值则可以多选。

    相关文章

      网友评论

          本文标题:mySql基础语句

          本文链接:https://www.haomeiwen.com/subject/qblhuqtx.html