相关疑难解决方法(0)

SQL,辅助数字表

对于某些类型的SQL查询,辅助数字表可能非常有用.它可以创建为具有特定任务所需的行数的表,也可以创建为返回每个查询所需行数的用户定义函数.

创建这样一个函数的最佳方法是什么?

sql sql-server

57
推荐指数
3
解决办法
2万
查看次数

T-SQL将Word拆分为字符

我到处搜索,我无法在任何地方找到这个实现.

让我说我有这个词: QWERTY

我想获得这张桌子:

Q
W
E
R
T
Y
Run Code Online (Sandbox Code Playgroud)

或者QWERTY AnotherWord我想获得

Q
W
E
R
T
Y
[space character here]
A
n
o
t
h
e
r
W
o
r
d
Run Code Online (Sandbox Code Playgroud)

t-sql string split

14
推荐指数
2
解决办法
2万
查看次数

SQL Prime编号功能

如果我有一个数字X并想说IsPrime(X) = true/false使用sql-server最好的方法是什么?

我只是导入一个素数表还是有一个算法对于较小的素数是相当有效的?

注意:我对大于约的数字不感兴趣.千万.

结束使用以下内容:

CREATE FUNCTION [dbo].[isPrime]
(
    @number INT
)
RETURNS VARCHAR(10)

BEGIN


    DECLARE @retVal VARCHAR(10) = 'TRUE';

    DECLARE @x INT = 1;
    DECLARE @y INT = 0;

    WHILE (@x <= @number )
    BEGIN

            IF (( @number % @x) = 0 )
            BEGIN
                SET @y = @y + 1;
            END

            IF (@y > 2 )
            BEGIN
                SET @retVal = 'FALSE'
                BREAK
            END

            SET @x = @x + 1

    END

    RETURN @retVal
END
Run Code Online (Sandbox Code Playgroud)

sql sql-server primes sql-server-2012

9
推荐指数
3
解决办法
3万
查看次数

想从sql server显示12个月的名字

我想从sql server显示12个月的名字.我虽然要在temp表中完成插入月份名称,然后在该表上激活select语句.所以我不得不写12个插入表来插入12个月的名字.所以我搜索谷歌找到更好的解决方案,我得到了它.

这是sql语句

WITH R(N) AS
(
    SELECT 0
    UNION ALL
    SELECT N+1 
    FROM R
    WHERE N < 12
)

SELECT LEFT(DATENAME(MONTH,DATEADD(MONTH,-N,GETDATE())),3) AS [month]
FROM R
Run Code Online (Sandbox Code Playgroud)

上面的脚本工作得很好但我的问题是我只是不明白它是如何工作的.我从不和CTE合作过.

所以告诉我是什么意思 WITH R(N) AS

并看到这个SQL

SELECT LEFT(DATENAME(MONTH,DATEADD(MONTH,-N,GETDATE())),3) AS [month] FROM R
when above sql execute how it is getting value for -N ??
because here i have not set anything for -N ??
Run Code Online (Sandbox Code Playgroud)

所以请任何人帮助我理解整个事情是如何运作的.thaks

我的第二阶段问题

只是看看并告诉我

;WITH months(MonthNumber) AS
(
    SELECT 0
    UNION ALL
    SELECT MonthNumber+1 
    FROM months
    WHERE MonthNumber < 12
) …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server

8
推荐指数
2
解决办法
4万
查看次数

内部连接 ​​VS 内部远程连接的区别

我不知道我必须在哪里问这个问题,我只想知道Inner Join和之间有什么区别Inner Remote Join?我刚刚尝试实现两个连接,如下所示:

With Remote Inner Join

SELECT P.CompanyName,u.UserName from tb_Offices AS P
INNER REMOTE JOIN 
tb_Users AS U
on P.UserId=U.UserId
Run Code Online (Sandbox Code Playgroud)

With Simple Inner Join

SELECT P.CompanyName,u.UserName from tb_Offices AS P
INNER JOIN 
tb_Users AS U
on P.UserId=U.UserId
Run Code Online (Sandbox Code Playgroud)

两个查询都返回相同类型的记录。

然后我尝试使用执行计划运行:

随着Remote Inner Join我:

在此处输入图片说明

Inner Join我得到了简单的:

在此处输入图片说明

我对SQL Execution Plan.

我只是想知道Inner Join和之间哪个更好Inner Remote Join

谢谢

sql sql-server join sql-server-2012

3
推荐指数
1
解决办法
4707
查看次数

在 SQL Server 2014 Developer 中生成 20 亿行的有效方法

长话短说; 我正在测试一个通过网络连接从表中清除条目的系统,预计该功能最多可处理超过 20 亿个条目。

我需要对此进行压力测试才能确定。

这是我的测试脚本(最多可以在十分钟内生成 980 万个。)

DECLARE @I INT=0

WHILE @I <2000000001
BEGIN
    INSERT INTO "Table here"
    VALUES(@I)  

    SET @I=@I+1
END
Run Code Online (Sandbox Code Playgroud)

任何人都可以提出任何建议,或者让我了解在这种情况下我的测试环境的上限可能是什么?

analytics stress-testing sql-server-2014

2
推荐指数
1
解决办法
1089
查看次数