SQL基础语句

MySQL

SQL DML 和 DDL

可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL)。

SQL (结构化查询语言)是用于执行查询的语法。但是 SQL 语言也包含用于更新、插入和删除记录的语法。

查询和更新指令构成了 SQL 的 DML 部分:

  • SELECT - 从数据库表中获取数据
  • UPDATE - 更新数据库表中的数据
  • DELETE - 从数据库表中删除数据
  • INSERT INTO - 向数据库表中插入数据

SQL 的数据定义语言 (DDL) 部分使我们有能力创建或删除表格。我们也可以定义索引(键),规定表之间的链接,以及施加表间的约束。

SQL 中最重要的 DDL 语句:

  • CREATE DATABASE - 创建新数据库
  • ALTER DATABASE - 修改数据库
  • CREATE TABLE - 创建新表
  • ALTER TABLE - 变更(改变)数据库表
  • DROP TABLE - 删除表
  • CREATE INDEX - 创建索引(搜索键)
  • DROP INDEX - 删除索引

基础


连接数据库

DOS

开始-运行-cmd

mysql -h127.0.0.1 -uroot -p123456

ps: -h后面是mysqlServer所在地址,-u后面是用户名,-p后面是密码

查看数据库

show databases;

使用数据库

use 库名;

SQL:

查看表

show tables;

查看表结构

desc 表名;

建表

create table t1(
    id int not null primary key, 
    name char(20) not null
    );

语法:create table 表名称( 字段名 字段名类型 字段描述符,字段名 字段类型 字段描述符);

删除表

drop table 表名;

修改表

添加字段

alter table 表名 add(字段名 int not null);

语法:alter table 表明称 add(字段名 类型 描述符);

移除字段

alter table 表名 drop column 字段名;

语法:alter table 表名 drop colunm 字段名,drop colunm 字段名;

变更字段

alter table 表名 change 旧字段名 新字段名 int not null;

语法:alter table 表名 change 旧字段名 新字段名 新字段描述符;

插入

全字段插入

insert into 表名 values(值1, 值2,....);

个别字段插入

insert into 表名(列1, 列2,...) values(值1, 值2,...);

普通查询

单表全字段查询

select * from 表名;

单表个别字段查询

select 列1,列2... from 表名;

多表查询

SELECT
	t1.order_id,
	t2.*
FROM
	`order` t1,
	order_detail t2

语法:select  表1 . 列1 , 表2 . 列2 … from 表一,表二…;

ps:使用关键字命名时需要  ` `(~键)

条件查询

单表条件查询

select * from t1 where id=1;

语法:select 列1,列2 from 表名 where 条件;

多表条件查询

SELECT
	t1.order_id,
	t2.*
FROM
	`order` t1,
	order_detail t2
WHERE
	t1.order_id = 1

语法:select 表1.列1,表2.列2  from 表1,表2 where 条件;

子查询(嵌套查询)

SELECT
	*
FROM
	order_detail
WHERE
	order_id = (
		SELECT
			order_id
		FROM
			`order`
		WHERE
			order_id = 1
	)

语法:select 列1,列2…… from 表名 where 条件(查询);

并查询

(SELECT order_id FROM `order`)
UNION
(SELECT order_id FROM order_detail)

交查询

SELECT
	order_id
FROM
	`order`
WHERE
	order_id IN (
		SELECT
			order_id
		FROM
			order_detail
	);

删除

delete from 表名 where 列名称 = 值;

更新

update 表名称 set 列名称 = 新值 where 列名称 = 某值

 SQL SELECT DISTINCT 语句

在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。

关键词 DISTINCT 用于返回唯一不同的值。

SELECT DISTINCT 列名称 FROM 表名称

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值