新闻资讯

新闻资讯 行业动态

MySQL数据库基本知识

编辑:006     时间:2020-03-05

1.创建数据库


  CREATE DATABASE database_name


2.删除数据库


  DROP DATABASE database_name


3.选择数据库


  USE database_name


4.数据类型


(1)数值类型



 (2)日期和时间类型





 (3)字符串类型


5.创建数据表


  CREATE TABLE table_name (column_name column_type)


6.删除数据表


  DROP TABLE table_name


7.更新数据表信息


  (1)添加表字段


    ALTER TABLE table_name ADD new_column DATATYPE


    使用FIRST关键字可以将新增列的顺序调整至数据表的第一列


    ALTER TABLE table_name ADD new_column DATATYPE FIRST


    使用AFTER关键字可以将新增列调整至数据表的指定列之后


    ALTER TABLE table_name ADD new_column DATATYPE AFTER old_column


  (2)删除表字段


    ALTER TABLE table_name DROP old_column


  (3)修改表字段类型


    ALTER TABLE table_name  MODIFY column_name NEW_DATATYPE


  (4)修改字段名称


    ALTER TABLE table_name CHANGE old_column_name new_column_name DATATYPE


8.插入数据


  INSERT INTO table_name  (column1, column2,column3...columnN)


          VALUES


               (value1, value2, value3...valueN);


9.查询数据


  SELECT column1, column2, column3...columnN FROM table_name


  (1)使用*可以替代字段名,SELECT语句会返回表的所有字段


    例:SELECT * FROM table_name


  (2)可以使用WHERE语句来包含任何条件


    例:SELECT * FROM table_name WHERE column=1


  (3)可以使用LIMIT属性设定返回的记录数


    例:返回查询结果的前三条记录


    SELECT * FROM table_name LIMIT 3


    例:返回查询结果的第三条记录


    SELECT * FROM table_name LIMIT 2,1      (2指的是第几条数据(从0开始计数),1指的是从2开始返回几条数据)


  (4)可以使用OFFSET指定开始查询的偏移量,默认情况下偏移量为0


    例:SELECT * FROM table_name LIMIT 2 OFFSET 3 等于 SELECT * FROM table_name LIMIT 2,3


10.更新数据


  UPDATE table_name SET column1=value1, column2=value2


  WHERE condition


11.删除数据


  DELECE FROM table_name


  WHERE condition


12.LIKE子句


  LIKE子句中使用%号来表示任意字符,其的效果类似正则表达式中的*,如果没有使用%,那么LIKE的效果等价于=


  SELECT * FROM table_name


  WHERE column1 LIKE %condtion%


 13.UNION


  SELECT column1,  column2, column3...columnN FROM table_a


  [WHERE condition]


  UNION [ALL | DISTINCT]


  SELECT column1,  column2, column3...columnN FROM table_b


  [WHERE condition]


  UNION的作用的连接两个查询结果集


  DISTINCT的作用是对两个结果集进行去重处理,默认情况下已经是DISTINCT的结果了


  ALL的作用的不对两个结果集进行去重处理


14.ORDER BY


  SELECT * FROM table_name


  ORDER BY column1 [ASC | DESC]


  ASC:将结果集按column1升序排列,默认情况下使用升序排序


  DESC:将结果集按column1降序排列


15.GROUP BY


  把数据按照指定列(可以是一列或者多列)进行分组,通常和计算函数COUNT()还有SUM(),AVG()等求值函数一起使用


  例:根据column1将数据进行分组,并且统计每种数据的记录数


    SELECT column1, COUNT(*) FROM table_name


    GROUP BY column1


  WITH ROLLUP可以将GROUP BY的统计结果集基础上再做相同的统计(SUM,AVG....)


  例:假设有下面这样一张表 name=姓名,website=网站,access_count=访问记录

name website access_count
张三 百度 3
李四 新浪 5
王五 淘宝 4
张三 新浪 2
李四 百度 1
王五 搜狐 4
赵六 搜狐 5


  执行如下代码:


    SELECT name, SUM(access_count) FROM table_name


    GROUP BY name WITH ROLLUP


  得到:

ame SUM(access_count)
张三 5
李四 6
王五 8
赵六 5
NULL 24


16.INNER JOIN


  INNER JOIN被称为内连接或者等值连接,获取两个表中字段匹配关系的记录


  


 


   例:SELECT table1.column1, table1.column1, table2.column3 FROM table1


     INNER JOIN table2


     ON condition


17.LEFT JOIN


  LEFT JOIN被称为左连接,获取左边所有记录,右表没有的记录补为NULL

  


 


   例:SELECT table1.column1, table1.column2, table2.column3 FROM table1


     LEFT JOIN table2


     ON condition


18.RIGHT JOIN


  RIGHT JOIN被称为右连接,获取右边所有数据,左表没有的记录补为NULL


  


 


   例:SELECT table1.column1, table2.column2, table2.column3 FROM table1


     RIGHT JOIN table2


     ON condition


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31365439/viewspace-2677272/,如需转载,请注明出处,否则将追究法律责任。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

回复列表

相关推荐