MySQL和SQL的区别是什么?之间是什么关系?
SQL(Structured Query Language)是用于管理和操作关系型数据库(RDBMS)的标准语言。SQL还可以用于这些RDBMS:MySQL、Oracle、Microsoft SQL Server、PostgreSQL。
而MySQL则是一种实现了SQL标准的关系型数据库管理系统。换句话说,MySQL是实现了SQL功能的软件,而SQL则是用于与这种软件进行交互的标准化语言。
MySQL处理数据量5千万条的数据,下性能更好。
MySQL下载地址
安装包:https://dev.mysql.com/downloads/installer/
安装指南:https://zhuanlan.zhihu.com/p/645347983
MySQL中的注释怎么写?
-- 这是一个单行注释
/*
这是一个多行注释,可以跨越多行
在这里你可以写入更多的注释内容
*/
-- 从products这个表格中把prod_name这一列取出来
-- 每个SQL语句结尾都要加一个分号
SELECT prod_name FROM products;
-- 取出数据,按照某一列(prod_name),升序排列ASC
SELECT prod_name FROM products ORDER BY prod_name ASC;
-- 降序排列DESC
SELECT prod_name FROM products ORDER BY prod_name DESC;
-- 取出多列。列名之间加个逗号即可
SELECT prod_id, prod_price, prod_name FROM products ORDER BY prod_price DESC;
-- 在前面那个排序基础上,再增加一个排序条件。
-- 适用于在前面那个排序基础上,有些行的prod_price完全一样,我希望再用prod_name对这些前一个条件一样行按照后面那个条件再排序
-- 只需要在后面写上第二个条件的列名 和升降序
SELECT prod_id, prod_price, prod_name FROM products ORDER
BY prod_price DESC, prod_name ASC;
-- 不想升降序,就把DESC和ASC这两个东西删掉
-- ORDER BY与LIMIT组合选择符合条件的前n行
SELECT prod_price FROM products ORDER BY prod_price DESC LIMIT 10; -- 前10个
取第10行开始到第18行
SELECT prod_name FROM products LIMIT 10,18;
只取出这一列中不重复的数据
取出这一列的列名是vend_id
SELECT DISTINCT vend_id FROM products;
数据汇总,算avg, min, max等统计指标
从products这个数据表中把prod_price取出,并计算出prod_price的平均值,返回出来
SELECT AVG(prod_price) FROM products
如果你想把取出的这一列 换个其他的列名 可以用AS
SELECT AVG(prod_price) AS avg_price FROM products
统计出数据集有多少行
-- * 表示所有的数据
SELECT COUNT(*) AS num_cust FROM customers;
统计出某一列 中 非空的行 的 行数
注意空的行,不算进去
SELECT COUNT(cust_email) AS num_cust FROM customers;
取某一列的最大的那一条数据
SELECT MAX(prod_price) AS max_price FROM products;
-- 提取出来这一列的列名是max_price
最小的
SELECT MIN(prod_price) AS min_price FROM products;
注意上面算的这些最大最小,是不把空值的内容纳入对比比较 的范围。