sql:常用sql 语句整理一 (整体架构)

今天总结一下常用的sql 语句:


1. 命令 连接数据库
连接本地数据库与远程数据库(112.26.xx.xx:3306):


mysql -h localhost -u root -p123 
mysql -h 112.26.xx.xx -P 3306 -u root -p
PS:u:用户名  P 端口   p:password


2. DDL  数据定义语言
数据定义语言(Data Definition Lanuage, DDL)定义了数据库模式,包括CREATE、ALTER、DROP、TRUNCATE、COMMENT与RENAME语句。
创建(CREATE)
create语句创建了一张表:




CREATETABLE`device_label` (
`id`int(11)NOTNULLAUTO_INCREMENT COMMENT '主键-自增长ID',
`origin_model`varchar(64)COLLATE utf8_bin NOTNULL COMMENT '收集机型',
`origin_vendor`varchar(64)COLLATE utf8_bin NOTNULL COMMENT '收集厂商',
`vendor`varchar(32)COLLATE utf8_bin NOTNULL COMMENT '标注厂商',
`model`varchar(32)COLLATE utf8_bin NOTNULL COMMENT '标注品牌',
PRIMARYKEY(`id`),
UNIQUEKEY`device_key` (`origin_model`,`origin_vendor`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULTCHARSET=utf8COLLATE=utf8_bin COMMENT='设备标注表';
改(ALTER)
ALTER TABLE改变了表的结构,支持如下操作,
修改列类型与列名:




alter table device_label modify origin_modelvarchar(32);
alter table device_label change origin_model device_model varchar(16);
追加列:




alter table device_label addos_type varchar(8)COLLATEutf8_binNOTNULLCOMMENT '操作系统'afterid;
修改列之间的顺序:


alter table device_label modify os_type varchar(8)after origin_model;
修改primary key:


alter table device_label drop primary key,add primary key (`origin_model`,`origin_vendor`);
清空(TRUNCATE)截断表操作  清空表数据而不删表结构
TRUNCATE为清空表,相当于delete from 不指定where条件。
truncate device_label; 
3. DCL  数据控制语言
数据控制语言(Data Control Language, DCL)用于用户权限的管理,包括了GRANT与REVOKE命令。
授权(GRANT)
MySQL有很精细的权限控制:
?细致的权限分类
?DB -> 表 -> 列,权限的粗细粒度
?对host(可通配符匹配)控制
创建hive用户,并赋予以localhost访问 db1 所有表的权限:


CREATE USER'hive'@'localhost'IDENTIFIED BY'mypass';
GRANT ALL ON db1.* TO'hive'@'localhost';
-- 可简写为
GRANT ALL ON db1.* TO'hive'@'localhost'IDENTIFIEDBY'mypass';
也可以只赋予某个表的select权限:


GRANT SELECT ON db2.invoice TO'hive'@'localhost';
4. DML  数据操作语言 多用于CURD
数据操作语言(Data manipulation language, DML)主要用于表达数据库的查询与更新,主要包括增删改查(INSERT,UPDATE,DELETE,SELECT)。
增(INSERT)
增加行数据:


insert into device_label (origin_model, origin_vendor, vendor, model)
values(
'h9','bbk','步步高','H9'
);


改(UPDATE)
更新列的值:


update device_label
set origin_model = 't2', origin_vendor = 'xiami'
where vendor = '锤子';
删(DELETE)
根据where条件删除行:


delete from device_label where origin_vendor = 'alps';
查(SELECT)
查询标注机型数超过10的厂商:


select vendor,count(distinctmodel)as models
from device_label
group by vendor
having models > 10


请大家多多指教!
下一篇 讲解比较高级一点的查询语句
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第一部分、 基础 1、创建数据库 2、删除数据库 3、备份sql server 4、创建新表 5、删除新表 6、增加一个列 7、添加和删除主键 8、索引 9、视图 10、几个简单的基本的sql语句 11、几个高级查询运算词 12、使用外连接 13、分组:Group by: 14、对数据库进行操作: 15.如何修改数据库的名称: 第二部分、 提升 1、复制表 2、拷贝表 3、跨数据库之间表的拷贝 4、子查询 5、显示文章、提交人和最后回复时间 6、外连接查询 7、在线视图查询 8、between的用法 9、in 的使用方法 10、两张关联表,删除主表中已经在副表中没有的信息 11、四表联查问题 12、日程安排提前五分钟提醒 13、一条sql 语句搞定数据库分页 14、前10条记录 15、选择每组中的最大数 第三部分、 技巧 1、True/False的使用 2、收缩数据库 3、压缩数据库 dbcc shrinkdatabase(dbname) 4、转移数据库给新用户以已存在用户权限 5、检查备份集 6、修复数据库 7、日志清除 8、更改某个表 9、存储更改全部表 10、SQL SERVER中直接循环写入数据 数据开发-经典 1.按姓氏笔画排序 2.数据库加密 3.取回表中字段 4.查看硬盘分区 5.比较A,B表是否相等 6.杀掉所有的事件探察器进程 7.记录搜索: 9:获取当前数据库中的所有用户表 10:获取某一个表的所有字段 11:查看与某一个表相关的视图、存储过程、函数 12:查看当前数据库中所有存储过程 13:查询用户创建的所有数据库 14:查询某一个表的字段和数据类型 15:不同服务器数据库之间的数据操作 SQL Server基本函数 SQLServer2000同步复制技术实现步骤 一、 预备工作 二、 正式配置
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值