-
sql基础
SQL
User表
id | pwd | name | |
---|---|---|---|
0 | 123 | gan | |
1 | 123 | gan | |
3 | 12 | peng |
book表
Bname | aUtherId | catagory | |
---|---|---|---|
数学 | 1 | 工具 | |
语文 | 0 | 文学 | |
英语 | 2 | 语言 |
select从数据库中提取数据
select * from user
select user.id from user
distinct关键字 选取唯一不同的值
select distinct user.name from user
where子句
select * from user where user.id=1
where子句中的运算符
= 等于
<>/!= 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于
betweent and 在某个范围内
like 搜索某种模式
in 指定针对某个列的多可能值
and 和 or 运算符
如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。
如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。
select * from user where uid=1 and name='gan'
select * from user where uid=1 or name='gan'
order by关键字
用于对结果集进行排序。
select * from user order by name 默认升序
select * from user order by name desc 降序
select * from user order by name,pwd
select的top,limit,rownum子句
SQL Servel/MS Access支持top
TOP 子句用于规定要返回的记录的数目
select top 5 * from user //取前五行
select top 50 percent *from user//前百分之50
MySQL支持Limit
select * from user limit 3 //取前三行
Oracle支持rownum
select * from user where rownum<=5//前五行
sql Like操作符
用于在 WHERE 子句中搜索列中的指定模式
select * from user where id like 0;
sql通配符
% 代替0个或多个字符
_代替一个字符
[charlist] 字符列中的任何单一字符
[^charlist] 不在字符列中的单一字符
或
[!charlist]
select *from user where name regexp '^[gfs]' //gfs开头
'^[A-H]' //A到H开头
'^[^A-H]'//不以A到H开头
sql IN 操作符
IN 操作符允许在 WHERE 子句中规定多个值。
select * from user id in(0,1)
sql between操作符
用于选取介于两个值之间的数据范围内的值
select * from user where ID between 1 and 10;
not between //不在范围内
sql 别名
select user.ID as I from user
select ID concat(pwd,",",name) as other from user //合并其他属性
sql 连接(join)
inner join 语法
select user.ID from user
inner join books on user.id=books.autherid
或者
select user.ID from user
join books on user.id=books.autherid
left join 语法
select user.ID from user
left join books on user.id=books.autherid
或者
select user.ID from user
left outer join books on user.id=books.autherid
right join/ right outer join
FUll outer join
sql uinon操作符
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。
请注意,UNION 内部的每个 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每个 SELECT 语句中的列的顺序必须相同。
select ID from user
unio
select autherid from books;//unio不显示重复,重复使用unio all
update
update user
set pwd=1222 where id=0 //必须要写where语句,不然全部都会更新
delete
delete from user
where id=0;
delete from user
或
delete * from user//删除所有数据
insert into
用于向表中插入新记录
insert into user
values(0,1234,gan);
insert into user(ID,PWD,NAME)
values(0,1234,gan);
select into语句
从一个表复制数据,然后把数据插入到另一个表中
select *
into newtable [in externaldb]
from user;
或者只复制希望的列
select ID
into newtable [in externaldb]
from user
insert into select语句
从一个表复制数据,然后把数据插入到一个已存在的表中
insert into table2
select * from table1;
或者 只复制希望的列插入到另一个已存在的表中
insert into table2(id)
select id from table1;
create datebase
create datebase dbname;
alter datebase
create table
create table table_name
(
column_name1 date_type(size),
column_name2 date_type(size),
column_name3 date_type(size),
....
);
sql约束(constraints)
-
NOT NULL - 指示某列不能存储 NULL 值。
-
UNIQUE - 保证某列的每行必须有唯一的值。
-
PRIMARY KEY - NOT NULL 和 UNIQUE 的结合。确保某列(或两个列多个列的结合)有唯一标识,有助于更容易更快速地找到表中的一个特定的记录。
-
FOREIGN KEY - 保证一个表中的数据匹配另一个表中的值的参照完整性。
-
CHECK - 保证列中的值符合指定的条件。
-
DEFAULT - 规定没有给列赋值时的默认值
sql auto increment字段
新记录插入表中时生成一个唯一的数字。
alter table
用于在已有的表中添加、删除、或修改列
alter table table_name
ADD column_name datetype
修改数据类型
alter table table_name
alter column column_name datatype
删除列
alter table table_name
drop column column_name
drop table
drop table table_name
仅需要删除表内的数据,但并不删除表本身
truncate table table_name
create index
在表中创建索引
在不读取整个表的情况下,索引使数据库应用程序可以更快地查找数据。
create index index_name
on table_name(columu_name)
drop index
drop index table_name.index_name
出处:https://www.cnblogs.com/ganph/p/14984586.html
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式