首页 > 解决方案 > Visual Studio SQL 返回重复值

问题描述

我有一个存储员工全名的数据库,我正在尝试通过 SQL 使用该数据库来打印我们的姓名。问题是,该数据库多次包含员工姓名,而我构建的查询会多次打印它们,而我只需要一次。这就是我所拥有的:

    <asp:SqlDataSource ID="SqlDataSource25" runat="server" ConnectionString="<%$ ConnectionStrings:IntranetDB %>" SelectCommand="SELECT  DISTINCT TOP (3) Permissions.id, Permissions.username, Permissions.grouping, Permissions.isContentManager, Permissions.CMRegion, Recognize.give, Recognize.receive, Recognize.fullnameGive, Recognize.fullnameReceive, 
           CASE WHEN Permissions.username = Recognize.give THEN Recognize.fullnameGive WHEN Permissions.username = Recognize.receive THEN Recognize.fullnameReceive END AS Expr1
FROM    Permissions INNER JOIN
           Recognize ON Permissions.username = Recognize.give OR Permissions.username = Recognize.receive
WHERE  (Permissions.grouping = 'design') AND (Permissions.isContentManager = 'yes')">
                   
          
                </asp:SqlDataSource>

        <asp:GridView ID="GridView17" runat="server" AutoGenerateColumns="False" DataKeyNames="id" DataSourceID="SqlDataSource25">
            <Columns>
                <asp:BoundField DataField="id" HeaderText="id" InsertVisible="False" ReadOnly="True" Visible="False" SortExpression="id" />
                <asp:BoundField DataField="username" HeaderText="Content Manager" visible="false" SortExpression="username" />
                <asp:BoundField DataField="grouping" HeaderText="grouping" Visible="False" SortExpression="grouping" />
                <asp:BoundField DataField="isContentManager" HeaderText="isContentManager" Visible="False" SortExpression="isContentManager" />
                <asp:BoundField DataField="Expr1" HeaderText="Content Manager" Visible="True" SortExpression="Expr1" />
            </Columns>
          </asp:GridView>

这是打印的内容:

Content Manager: Bob Smith
Content Manager: Bob Smith
Content Manager: Bob Smith

这就是我要的:

Content Manager: Bob Smith
Content Manager: Joey Wool
Content Manager: Sarah Jones

如果有帮助,我尝试打印的三个员工姓名来自不同地区 (CMRegions),即佛罗里达、大西洋中部、北部等。所以,我尝试使用 DISTINCT 函数,但没有奏效。所以我试着想办法打印它,以便他们的 CMRegions 考虑,但我不确定如何。

标签: sqlvisual-studio

解决方案


推荐阅读