【发布时间】:2011-02-22 15:38:33
【问题描述】:
我有一个 ASPX.NET DataGrid,我试图从一个表中使用 select LIKE 'X'%,该表有一个名为 location 的字段。我试图在我的数据网格的不同列中显示以某个字母开头的位置(例如 wxxx、axxx、fxxx)。
我正在尝试使用如下所示的 SP 在我的数据网格中显示多于 1 列。问题是表 locationMaster 只有一个名为 location 的字段。字段 Location 具有以不同字母开头的可变位置编号(例如 w1002、w1003、00159、00526)。我想做的是使用 sp 在我的数据网格的一列中显示 wxxxx 位置,在另一列中显示 0xxxx 位置。如果我只是简单地运行
SELECT DISTINCT
LM.LOCATION AS 'LOCATIONS',
LM.COUNTLEVEL AS 'COUNTLEVEL'
FROM
SOH S WITH(NOLOCK)
JOIN LOCATIONMASTER LM ON LM.LMID = S.LMID
WHERE
LM.COUNTLEVEL = 1
AND LM.LOCATION NOT IN ('RECOU','PROBLEM','TOSTOCK','PYXVLOC')
我的数据网格只有 1 列包含所有位置,页面会很长 如果我能以某种方式在 sp 中使用 LIKE 'W%' AND LIKE '0%' 并创建两列
SELECT
DISTINCT LM.LOCATION AS '0 LOCATIONS' ,
LM.COUNTLEVEL AS 'COUNTLEVEL'
FROM SOH S WITH(NOLOCK)
JOIN LOCATIONMASTER LM ON LM.LMID = S.LMID
WHERE
LM.COUNTLEVEL = 1 AND
LM.LOCATION NOT IN ('RECOU','PROBLEM','TOSTOCK','PYXVLOC')
AND LM.LOCATION LIKE '0%'
SELECT
DISTINCT LM.LOCATION AS 'A LOCATIONS' ,
LM.COUNTLEVEL AS 'COUNTLEVEL'
FROM SOH S WITH(NOLOCK)
JOIN LOCATIONMASTER LM ON LM.LMID = S.LMID
WHERE
LM.COUNTLEVEL = 1 AND
LM.LOCATION NOT IN ('RECOU','PROBLEM','TOSTOCK','PYXVLOC')
AND LM.LOCATION LIKE 'A%'**
这是我的数据网格代码
<Columns>
<asp:BoundColumn DataField="COUNTLEVEL" Visible="false"/>
<asp:TemplateColumn HeaderText="LOCATION">
<ItemTemplate>
<a href='confirmRecount.aspx?Var=<%# DataBinder.Eval(Container.DataItem ,"0 LOCATIONS")%>'>
<%# DataBinder.Eval(Container.DataItem, "0 LOCATIONS")%>
</a>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
【问题讨论】:
-
@Adam 问题发布在帖子顶部。对不起,如果你不明白这个问题。让我知道是否需要更具描述性。
-
... 真奇怪,我之前的评论被删除了。 (可以说是明智的,因为这是对亚当删除评论的回应)。尽管如此,应该将其删除有点奇怪。我认为它是一个模组吗?无论如何,我仍然想确保这篇文章不会因为与之前发布的问题(不必要地关闭)的重复而关闭。
-
@silky 同意...问题发布在帖子顶部。对不起,如果你不明白这个问题。让我知道是否需要更具描述性
-
您确实需要更具描述性。意义重大。
标签: sql-server stored-procedures datagrid asp.net