我在Sql服务器中遇到问题,按查询分组,这会使我两次返回表的一个字段(意味着重复)。我不知道如何克服这个问题。
ALTER PROCEDURE [dbo].[States_of_Path_SelectAll]
AS
SELECT FromState
FROM RawPaths
GROUP BY FromState
上面是查询,它返回一个FromState
等于Close By
两次的值,而其他FromState
都可以。
查询的输出是:Meeting CloseBy忽略Follow CloseBy
您的数据中可能有不属于您的空格。您有几种选择:
1)定期清理数据中出现的空间。您可以使用如下语句:
update RawPaths
set FromState = ltrim(rtrim(FromState)
2)让您的查询删除空格:
select ltrim(rtrim(FromState)) as FromState
from RawPaths
group by ltrim(rtrim(FromState))
3)首先确保只有有效数据才能进入您的表(最佳选择)。
您可以使用ID字段和描述字段创建另一个称为“状态”的表。然后将FromState字段更改为整数,并仅允许通过您的界面和/或使用键约束将有效状态输入到该字段中。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句