小编Har*_*mar的帖子

SQL中Stuff和XML路径的工作原理或逻辑

我的输出是正确的,但我想知道STUFF实际上是如何工作的.

我有简单的查询,它返回@startDate&之间的总月数@endDate.

我在STUFF的帮助下将这几个月存入@cols .

查询是这样的:

SELECT DISTINCT ',' 
                + Quotename(CONVERT(CHAR(10), startdate, 120)) 
FROM   #tempdates 
Run Code Online (Sandbox Code Playgroud)
  1. 查询中的","应在值之前打印,但打印方式如下面的O/P.
  2. 如果我从东西中删除XML路径,我将获得null值.
  3. 实际上STUFFworks如何使用XML路径

这是我的输出:

在此输入图像描述

 DECLARE @cols AS NVARCHAR(MAX),   
            @query AS NVARCHAR(MAX),  
            @startdate datetime =  '1-Jan-2014',  
            @enddate datetime  =  '1-Jun-2014'

    ;with cte (StartDate, EndDate) as   
    (   
       select min(@startdate) StartDate, max(@enddate) EndDate   
       union all   
       select dateadd(mm, 1, StartDate), EndDate   
       from cte   
       where StartDate < EndDate   
    )   
    select StartDate   
    into #tempDates   
    from cte   

    select @cols =  STUFF((SELECT distinct ',' + …
Run Code Online (Sandbox Code Playgroud)

xml sql sql-server sql-server-2008

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

如何在sql中实现FIFO

我在sql中进行FIFO实现.我的应用程序中有批号概念.如果假设我在库存中销售,那么我的应用程序应该告诉我哪个库存是先到的.让我们.假设我在8月4日,5月5日和8月6日购买了库存'A'

On 4th Aug - A Inventory has batch number   BT002 - 10 (Qty)
On 5th Aug - A's Inventory has batch number BT003 - 15 (Qty)
On 6th Aug - A's Inventory has batch number BT001 - 10 (Qty)
Run Code Online (Sandbox Code Playgroud)

所以,现在我有股票现在我手中如下:

A Inventory
BT002 - 10 - 4-Aug
BT003 - 15 - 5-Aug
BT001 - 10 - 6-Aug
Run Code Online (Sandbox Code Playgroud)

现在,如果我想将库存出售给任何人,那么我的应用程序应该告诉我,我应该首先卖掉BT002(批号)库存,因为它首先出现.

这就是我在我的应用程序中使用的概念.

现在我想从'A'(库存)卖出15个数量.

那么O/p应该是这样的:

BT002 - 10
BT003 - 5
Run Code Online (Sandbox Code Playgroud)

这是我的查询:

SELECT ISNULL(SUM(qty),0) AS Qty,batch_no,accept_date  FROM RS_GIN_Master 
GROUP BY batch_no,accept_date
HAVING ISNULL(SUM(qty),0) …
Run Code Online (Sandbox Code Playgroud)

sql sql-server

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

文本框导致ASP.NET C#SQL出现问题

我正在使用嵌套的Gridview(我有5个嵌套的Gridviews).我为这些Gridview应用了一个Regular Field验证器.

但是一旦我点击按钮,就会在文本框中生成逗号.因此,每当我点击按钮时,所有验证都会被触发.

我研究了很多文章,但没有找到与之相关的文章.

以下是Gridview的图像,其中包含在文本框中生成的逗号:

错误页面的图像

HTML代码部分

<%-- First Gridview--%>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false"
    CssClass="gvstyling gridview_width_60" ShowHeaderWhenEmpty="true" EmptyDataText="Record(s) Not Found!"
    DataKeyNames="locality" ShowHeader="false" OnRowDataBound="gvLocality_RowDataBound">
    <Columns>

        <asp:TemplateField ItemStyle-Width="15px">
            <ItemTemplate>
                <img alt="" style="cursor: pointer" src="../images/plus.png" />

                <asp:Panel ID="pnlCompanyName" runat="server" Style="display: none">

                    <%-- Second Gridview --%>
                    <asp:GridView ID="gvCompanyName" ShowHeader="false" ShowHeaderWhenEmpty="false" CssClass="gvstyling gridview_width_100"
                        OnRowDataBound="gvCompanyName_RowDataBound" runat="server"
                        AutoGenerateColumns="false" EmptyDataText="No Record(s) Found!">

                        <Columns>

                            <asp:TemplateField ItemStyle-Width="15px">
                                <ItemTemplate>
                                    <asp:HiddenField ID="hfRetailer_Id" Value='<%# Eval("retailer_id") %>' runat="server"></asp:HiddenField>
                                    <asp:HiddenField ID="hfLocality" Value='<%# Eval("locality") %>' runat="server"></asp:HiddenField>
                                    <asp:Label ID="lbl" Visible="false" Text='<%# Eval("retailer_id") %>' runat="server"></asp:Label>
                                    <img alt="" style="cursor: pointer" …
Run Code Online (Sandbox Code Playgroud)

c# asp.net gridview nested

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

如何在SQL中删除一个表后检查存储过程的数量

我正在使用SQL 2012.

我的项目中有大型数据库结构.我的数据库中有大约10000个存储过程.

我必须从数据库中删除一个表,有没有办法可以通过删除我的表直接检查多少存储过程将影响.

任何帮助都会受到关注.

sql sql-server sql-server-2012

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

基于SQL Server中分区的Min()和Max()

我想使用最小和最大函数,但要满足某些条件。

Create Table #Test (Id Int Identity(1,1), Category Varchar(100), DateTimeStamp DateTime)



    Insert into #Test (Category,DateTimeStamp) values ('c1','2019-08-13 01:00:13.503')
        Insert into #Test (Category,DateTimeStamp) values ('c1','2019-08-13 02:00:13.503')
        Insert into #Test (Category,DateTimeStamp) values ('c1','2019-08-13 03:00:13.503')
        Insert into #Test (Category,DateTimeStamp) values ('c1','2019-08-13 04:00:13.503')
        Insert into #Test (Category,DateTimeStamp) values ('c1','2019-08-13 05:00:13.503')
        Insert into #Test (Category,DateTimeStamp) values ('c2','2019-08-13 06:00:13.503')
        Insert into #Test (Category,DateTimeStamp) values ('c2','2019-08-13 07:00:13.503')
        Insert into #Test (Category,DateTimeStamp) values ('c2','2019-08-13 08:00:13.503')
        Insert into #Test (Category,DateTimeStamp) values ('c2','2019-08-13 09:00:13.503')
        Insert into #Test (Category,DateTimeStamp) values ('c2','2019-08-13 …
Run Code Online (Sandbox Code Playgroud)

sql sql-server max min

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

标签 统计

sql ×4

sql-server ×4

asp.net ×1

c# ×1

gridview ×1

max ×1

min ×1

nested ×1

sql-server-2008 ×1

sql-server-2012 ×1

xml ×1