一.库操作
创建数据库
create database 数据库名
mysqladmin -u root -p create 数据库名
使用数据库
use 数据库名
删除数据库
drop database 数据库名
mysqladmin -u root -p drop 数据库名
二.数据类型
数值类型
image.png日期和时间类型
image.png字符串类型
image.png注
MySQL 5.0 以上的版本:
- 1、一个汉字占多少长度与编码有关:
UTF-8:一个汉字=3个字节
GBK:一个汉字=2个字节 - 2、varchar(n) 表示 n 个字符,无论汉字和英文,Mysql 都能存入 n 个字符,仅是实际字节长度有所区别
三. 表操作
创建表
create table student( id int AUTO_INCREMENT, name varchar not null, brith date, primary key(id) )ENGINE=InnoDB DEFAULT CHARSET=utf8;
删除表
drop table tablename
插入数据
INSERT INTO table_name ( field1, field2,...fieldN ) VALUES ( value1, value2,...valueN );
查询数据
SELECT column_name,column_name FROM table_name [WHERE Clause] [LIMIT N][ OFFSET M]
-
可以为多表,用逗号隔开
-
你可以使用 LIMIT 属性来设定返回的记录数。
-
你可以通过OFFSET指定SELECT语句开始查询的数据偏移量。默认情况下偏移量为0。
-
例子
编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary) 。+----+--------+ | Id | Salary | +----+--------+ | 1 | 100 | | 2 | 200 | | 3 | 300 | +----+--------+
例如上述 Employee 表,SQL查询应该返回 200 作为第二高的薪水。如果不存在第二高的薪水,那么查询应返回 null。
+---------------------+
| SecondHighestSalary |
+---------------------+
| 200 |
+---------------------+
`
解答
SELECT (SELECT DISTINCT Salary FROM Employee ORDER BY Salary DESC LIMIT 1 OFFSET 1) AS SecondHighestSalary ;
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/second-highest-salary
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
更新数据
UPDATE table_name SET field1=new-value1, field2=new-value2 [WHERE Clause]
删除数据
DELETE FROM table_name [WHERE Clause]
网友评论