「这是我参与11月更文挑战的第1天,活动详情查看:2021最后一次更文挑战」
小小前端有时候也需要写一写API,所以对平时常用的 SQL 语句简单的总结了一下。
插入数据
- 向已有表插入数据
1 | sql复制代码insert into [DB_name].[dbo].[table_name] |
- 插入数据并返回该条数据的自增列ID
1 | sql复制代码-- 返回本次语句块中插入数据的最后一个自增量ID |
[注意] 插入时,忽略自增列的值
从已有数据表向另一个表追加数据
1 | sql复制代码insert into dbo.a |
将查询数据插入临时表(临时表之前不存在)
1 | sql复制代码select * |
删除数据
1 | sql复制代码delete from [DB_name].[dbo].[table_name] |
查询数据
1 | sql复制代码select top 1000 * |
修改数据
1 | sql复制代码update [DB_Name].[dbo].[Table_Name] |
批量替换特定列的特定字符串
1 | sql复制代码update [dbo].[Table_Name] |
创建表
1 | sql复制代码CREATE TABLE [DB_Name].[dbo].[Table_Name]( |
修改表结构
1 | sql复制代码-- 新增字段 |
SQL表连接
- [INNER] JOIN: 内连接, 如果表中有至少一个匹配,则返回行
- LEFT JOIN: 左连接, 即使右表中没有匹配,也从左表返回所有的行
- RIGHT JOIN: 右连接, 即使左表中没有匹配,也从右表返回所有的行
- FULL JOIN: 全连接, 只要其中一个表中存在匹配,就返回行
Table Person
Id_P | Name | City |
---|---|---|
1 | Winter | London |
2 | Gross | New York |
3 | Mars | Beijing |
Table Orders
Id_O | OrderNo | Id_P |
---|---|---|
1 | 11111 | 3 |
2 | 22222 | 3 |
3 | 33333 | 1 |
4 | 44444 | 1 |
5 | 55555 | 65 |
- 谁订购了产品,分别订购了什么产品?
1 | sql复制代码select Person.Name, Orders.OrderNo |
the Results:
Name | OrderNo |
---|---|
Winter | 33333 |
Winter | 44444 |
Mars | 11111 |
Mars | 22222 |
- 列出所有人的订购(inner join)
1 | sql复制代码select Person.Name, Orders.OrderNo |
the Results:
Name | OrderNo |
---|---|
Winter | 33333 |
Winter | 44444 |
Mars | 11111 |
Mars | 22222 |
查看特定表的字段结构信息
使用 INFORMATION_SCHEMA.COLUMNS
1 | sql复制代码-- 实体表 |
使用 sp_columns 存储过程
适用于 DBLink 下的其他 Server 下的表
缺点:不能筛选特定需要的字段
1 | sql复制代码-- 实体表 |
使用 sys.columns
缺点:获取到的字段类型是数据库里的数字代号,不是可读文字
1 | sql复制代码-- 临时表 |
查看特定表的信息
1 | sql复制代码select * |
插入特殊字符值
1 | sql复制代码-- 1. 修改列类型为 'NVARCHAR' |
修改 text 类型的列为 ntext 类型
1 | sql复制代码-- 先修改列的类型为 varchar(max) |
本文转载自: 掘金