小编M.I*_*M.F的帖子

用破折号对字母数字值进行排序

我定义了一个名为 Inventory 的表,其中包含一个varchar(45)名为ItemNameCode. 这是表格,包含以下字母数字值。

在此处输入图片说明

我们要按字母数字排序为:

MES40
PT14
PT14-403
PT14-646-649
PT14-646-649
PT15-3-11
PT15-12-42
PT15-12-572-575
PT16-164
PT16-227
PT16-62-71
PT16-136
PT16-137
Run Code Online (Sandbox Code Playgroud)

我尝试了波纹管查询,但没有得到确切的顺序:

SELECT ItemNameCode
FROM Inventory
ORDER BY LEFT(ItemNameCode,PATINDEX('%[0-9]%',ItemNameCode)-1)
Run Code Online (Sandbox Code Playgroud)

sql-server sql-server-2008-r2 sql-server-2014

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

如何跳过 SQL Server 查询中的行?

我从我的product表中选择了一个额外的 Row_Number() 列 (Num) 的查询,我得到了如下的答案(我只限制了 20 行来检索)。

询问

SELECT * 
FROM (SELECT ROW_NUMBER() OVER(ORDER BY ProductCode) AS Num, 
             ProductName
      FROM   BASE_Product 
      WHERE IsActive = 1) BASE_Product 
WHERE Num > 0 
AND   Num < (21)
Run Code Online (Sandbox Code Playgroud)

结果

在此处输入图片说明

我的要求是如何跳过每 3 行并仅检索 7 个限制行。

预期结果

我需要如下结果:

在此处输入图片说明

sql-server sql-server-2012 sql-server-2014

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

如何使用内连接获取两个表值的总和

有下图的表格。

在此处输入图片说明

我的问题是从每个客户那里检索并获取发票表中的发票总和,发票表中的发票总余额以及退货支票到期和退货支票总余额的总和......

我想要使​​用内部连接从上面的 3 个表中得到如下图所示的答案

请帮帮我谢谢。

在此处输入图片说明

sql-server-2008-r2

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

sql中如何将多条语句合并为一条Select语句

如何将多条语句合并为一条选择语句。

我试过但得到错误:“当子查询没有通过 EXISTS 引入时,只能在选择列表中指定一个表达式。”

下面我已经提到了所有 4 个陈述。

声明 1

SELECT * 
FROM   (SELECT ROW_NUMBER() OVER(
            ORDER BY 
                CASE WHEN ISNUMERIC(ProductCode) = 0 
                     THEN CAST(LEFT(RIGHT(ProductCode,LEN(ProductCode)-CHARINDEX('-',ProductCode)), patindex('%[^0-9]%', RIGHT(ProductCode,LEN(ProductCode)-CHARINDEX('-',ProductCode))+'.') - 1)  AS INT) 
                ELSE ProductCode END
              , ProductCode
            ) AS Num1
          , ProductCode + CHAR(13) + CHAR(10) + CHAR(13) + CHAR(10) + ProductName AS ProductCodeName1
        FROM  BASE_Product 
        WHERE IsActive = 1
        ) BASE_Product 
WHERE  Num1 > 0 AND Num1 < (95 + 1)
Run Code Online (Sandbox Code Playgroud)

声明 2

SELECT * FROM (SELECT ROW_NUMBER() OVER(ORDER BY CASE …
Run Code Online (Sandbox Code Playgroud)

sql-server-2014

0
推荐指数
1
解决办法
161
查看次数