- 课程:The Complete 2022 Web Development Bootcamp
- 工具:SQL Online Compiler - for Data Science
- 教程:SQL 教程 | 菜鸟教程
SQL vs. NOSQL
- SQL
- 注重结构
- NOSQL
- 更灵活,也更稳健
- MoogoDB
CRUD
Create
sql
CREATE TABLE product(id Int NOT NULL,name STRING,price MONEY,PRIMARY KEY(id))
NOT NULL
当此值为 null 时,不创建列PRIMARY KEY(id)
主键必须包含唯一的值,这个不能有重复的值
插入数值 第一种形式无需指定要插入数据的列名,只需提供被插入的值即可
sql
INSERT INTO _table_name_VALUES (_value1_,_value2_,_value3_,...);
第二种形式需要指定列名及被插入的值:
sql
INSERT INTO _table_name_ (_column1_,_column2_,_column3_,...)VALUES (_value1_,_value2_,_value3_,...);
Read
SELECT 语句用于从数据库中选取数据。
sql
SELECT _column_name_,_column_name_FROM _table_name_;
sql
SELECT * FROM _table_name_;
*
表示选择全部
可以用WHERE
筛选选择结果,如:
sql
SELECT _column_name_,_column_name_FROM _table_name_WHERE _column_name operator value_;
Update
sql
UPDATE _tablse_name_SET _column1_=_value1_,_column2_=_value2_,...WHERE _some_column_=_some_value_;
ALTER TABLE 语句用于在已有的表中添加、删除或修改列。 如需在表中添加列,请使用下面的语法:
sql
ALTER TABLE table_nameADD column_name datatype
如需删除表中的列,请使用下面的语法(请注意,某些数据库系统不允许这种在数据库表中删除列的方式):
sql
ALTER TABLE table_nameDROP COLUMN column_name
Destory
sql
DELETE FROM _table_name_WHERE _some_column_=_some_value_;
Understanding SQL Relationships, Foreign Keys and Inner Joins
FOREIGN KEY
- 用
FOREIGN KEY
来和外部表单链接 - 一个表中的 FOREIGN KEY 指向另一个表中的 UNIQUE KEY(唯一约束的键)。
INNER JOIN
选择相应列并合并表,ON
后面写的是条件
sql
SELECT _column_name(s)_FROM _table1_INNER JOIN _table2_ON _table1.column_name_=_table2.column_name_;
或:
sql
SELECT _column_name(s)_FROM _table1_JOIN _table2_ON _table1.column_name_=_table2.column_name_;