#2.如何创建数据表
USE atguigudb;
SHOW CREATE DATABASE atguigudb;
SHOW TABLES;
#方式1:
CREATE TABLE IF NOT EXISTS myemp1(
id INT,
emp_name VARCHAR(15),#使用varchar来定义字符串,必须在在使用时声明长度
hire_date DATE
);
#查看表结构
DESC myemp1;
#查看创建表的语句结构
SHOW CREATE TABLE myemp1;#如果创建表时没有指明字符集,则默认使用表所在的数据库的字符集
#查看表数据
SELECT * FROM myemp1;
#方式2:基于现有的表,同时导入数据
CREATE TABLE myemp2
AS
SELECT employee_id,last_name,salary
FROM employees;
DESC myemp2;
DESC employees;
SELECT * FROM myemp2;
#说明1:查询语句中字段的别名,可以作为新创建的表的字段的名称
#说明2:此时的查询语句可以结构比较丰富,使用前面章节讲过的各种select
CREATE TABLE myemp3
AS
SELECT e.employee_id,e.last_name,d.department_name
FROM employees e JOIN departments d
ON e.department_id=d.department_id
SELECT * FROM myemp3;
DESC myemp3;
#练习1:创建一个表employees_copy,实现对employees表的复制,包括表数据
CREATE TABLE employees_copy
AS
SELECT *
FROM employees;
SELECT * FROM employees_copy;
#练习2:创建一个表employees_bank,实现对employees表的复制,不包括表数据
CREATE TABLE employees_bank
AS
SELECT *
FROM employees
WHERE 1=2; #不让employees的数据进到新表里
SELECT * FROM employees_bank;