加入收藏 | 设为首页 | 会员中心 | 我要投稿 好传媒网 (https://www.haochuanmei.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQL快速参考

发布时间:2022-12-19 13:33:52 所属栏目:MsSql教程 来源:转载
导读: SQL 语句语法
AND / OR
SELECT column_name(s)
FROM table_name
WHERE condition
AND|OR condition
ALTER TABLE
ALTER TABLE table_name
ADD column_name datatype
or
ALTER TABLE table_n

SQL 语句语法

AND / OR

SELECT column_name(s)

FROM table_name

WHERE condition

AND|OR condition

ALTER TABLE

ALTER TABLE table_name

ADD column_name datatype

or

ALTER TABLE table_name

DROP COLUMN column_name

AS (alias)

SELECT column_name AS column_alias

FROM table_name

or

SELECT column_name

FROM table_name AS table_alias

BETWEEN

SELECT column_name(s)

FROM table_name

WHERE column_name

BETWEEN value1 AND value2

CREATE DATABASE

CREATE DATABASE database_name

CREATE TABLE

CREATE TABLE table_name

(

column_name1 data_type,

column_name2 data_type,

column_name2 data_type,

...

)

CREATE INDEX

CREATE INDEX index_name

ON table_name (column_name)

or

CREATE UNIQUE INDEX index_name

ON table_name (column_name)

CREATE VIEW

CREATE VIEW view_name AS

SELECT column_name(s)

FROM table_name

WHERE condition

DELETE

DELETE FROM table_name

WHERE some_column=some_value

or

DELETE FROM table_name

(Note:Deletes the entire table!!)

DELETE * FROM table_name

(Note:Deletes the entire table!!)

DROP DATABASE

DROP DATABASE database_name

DROP INDEX

DROP INDEX table_name.index_name (SQL Server)

DROP INDEX index_name ON table_name (MS Access)

DROP INDEX index_name (DB2/Oracle)

ALTER TABLE table_name

DROP INDEX index_name (MySQL)

DROP TABLE

DROP TABLE table_name

GROUP BY

SELECT column_name, aggregate_function(column_name)

FROM table_name

WHERE column_name operator value

GROUP BY column_name

HAVING

SELECT column_name, aggregate_function(column_name)

FROM table_name

WHERE column_name operator value

GROUP BY column_name

HAVING aggregate_function(column_name) operator value

IN

SELECT column_name(s)

FROM table_name

WHERE column_name

IN (value1,value2,..)

INSERT INTO

INSERT INTO table_name

VALUES (value1, value2, value3,....)

or

INSERT INTO table_name

(column1, column2, column3,...)

VALUES (value1, value2, value3,....)

INNER JOIN

SELECT column_name(s)

FROM table_name1

INNER JOIN table_name2

ON table_name1.column_name=table_name2.column_name

LEFT JOIN

SELECT column_name(s)

FROM table_name1

LEFT JOIN table_name2

ON table_name1.column_name=table_name2.column_name

RIGHT JOIN

SELECT column_name(s)

FROM table_name1

RIGHT JOIN table_name2

ON table_name1.column_name=table_name2.column_name

FULL JOIN

SELECT column_name(s)

FROM table_name1

FULL JOIN table_name2

ON table_name1.column_name=table_name2.column_name

LIKE

SELECT column_name(s)

FROM table_name

WHERE column_name LIKE pattern

ORDER BY

SELECT column_name(s)

FROM table_name

ORDER BY column_name [ASC|DESC]

SELECT

SELECT column_name(s)

FROM table_name

SELECT *

SELECT *

FROM table_name

SELECT DISTINCT

SELECT DISTINCT column_name(s)

FROM table_name

SELECT INTO

SELECT *

INTO new_table_name [IN externaldatabase]

FROM old_table_name

or

SELECT column_name(s)

INTO new_table_name [IN externaldatabase]

FROM old_table_name

SELECT TOP

SELECT TOP number|percent column_name(s)

FROM table_name

TRUNCATE TABLE

TRUNCATE TABLE table_name

UNION

SELECT column_name(s) FROM table_name1

UNION

SELECT column_name(s) FROM table_name2

UNION ALL

SELECT column_name(s) FROM table_name1

UNION ALL

SELECT column_name(s) FROM table_name2

UPDATE

UPDATE table_name

SET column1=value, column2=value,...

WHERE some_column=some_value

WHERE

SELECT column_name(s)

FROM table_name

WHERE column_name operator value

SELECT INTO 语句:表示从一个表中选取数据,然后把数据插入另一个表中,常用来备份一张表

1.全表结构备份:

SELECT * INTO new_table_name

FROM old_tablename;

示例:备份student表mssql 语句快速参考,备份表取名为student_backup

select * intostudent_backup

from student ;

则会生成一张与student表结构及数据一样的备份表。

2.如果只备份表中的某些列:

SELECT column_name1,column_name2...
INTO new_table_name 
FROM old_tablename
示例:只备份student表中的sno,name列入新表student_backup

select sno,name intostudent_backup

from student ;

3.如果需要将表中满足一定条件的记录进行备份,则可以使用where字句配套使用

示例:将所有性别为男的学生记录备份到新表student_backup

select * intostudent_backup

from student

where sex='男';

创建存储过程

USE [_2017CRCF_DATA]

GO

/****** Object: StoredProcedure [dbo].[usp_GetNewsAPIText] Script Date: 12/12/2017 19:04:50 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

creat proc [dbo].[usp_GetNewsAPIText]

@pageIndex int,

@pageSize int,

@sqlWhere varchar(1024),

@orderBy varchar(100),

@totalCount int output

as

begin

declare @sql nvarchar(1024)

declare @temp nvarchar(1024)

declare @total int

set @temp=' from iwebsoft_news as n

left join iwebsoft_news_class as nc on nc.classid=n.classid '

declare @countSql nvarchar(max)

set @countSql='select @a=count(1) '+@temp+' '+@sqlWhere

exec sp_executesql @countSql,N'@a int output',@totalCount output

/* == 如果查询页没有数据,加载第一页的数据 == */

set @total=ceiling(convert(decimal(18,1),@totalCount)/@pageSize)

if @total

(编辑:好传媒网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!