SQL SERVER 备忘

1、不要出现Select * ,需要什么字段写什么字段。

2、插入大量数据时,尽量不要使用循环,可以使用CTE,如果要使用循环,可放到一个事务中

BEGIN TRAN
DECLARE @index INT;
SET @index = 1;
WHILE @index <= 100000
BEGIN
INSERT dbo.TestTable(Number) VALUES( @index);
SET @index = @index + 1;
END
COMMIT

 3、查询3条随机数据

SELECT TOP 3 * FROM TestTable ORDER BY NEWID()

4、返回大约 10% 的行。每次执行此语句时,返回的行数通常都不同

SELECT ID, NAME FROM TestTable TABLESAMPLE (10 PERCENT) 

5、 获取日期的年、月、日

SELECT DATEPART(YEAR,GETDATE())
SELECT DATEPART(MONTH,GETDATE())
SELECT DATEPART(DAY,GETDATE())
SELECT DATENAME(WEEKDAY,GETDATE())

6、人名按拼音排序

SELECT Student_Name FROM dbo.T_Base_Student ORDER BY Student_Name COLLATE Chinese_Simplified_Pinyin_100_CI_AI_KS_WS

7、使用游标时加,上只读只进选项 

declare c cursor
    local static read_only forward_only
    for
原文地址:https://www.cnblogs.com/kgdxpr/p/2738105.html