[英]SQL Server 2012 - Separate 2 Varchar(max) columns to separate table?
[英]SQL Server 2012: MAX on varchar columns not working as expected
我在varchar列上使用像MAX这样的聚合。 当我在varchar列上执行简单选择时,我得到4个字符的值,即“övrö” 。 在那一栏中,我发现了很多长度更大的值。 我的理解是,它应该返回一个类似于“ asdfsadfasdfasdfsadfsdafsdafsadfasdfsadfasdf”的值。
如果我误解/滥用MAX,请纠正我,因为我必须在复杂的SQL中使用此概念以避免重复的记录。
如果varchar上的MAX根据字母顺序获得最高记录,那么如果我将它用于特定的列(如图2所示的#2和3),它仍会导致重复值的原因。红色边框区域显示重复项,应该是单行。
编辑-已解决的问题
问题是我在Group By子句中添加了字符串列Aggregates,删除后,重复项消失了!!!
谢谢您的帮助。
最小值和最大值获得最大值。 对于varchar,它不是长度,但可以想象它们是按字母顺序排序的。 Max取最后一个元素,而min取第一个元素。
如果要采用最大长度,则需要max(length(column))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.