【发布时间】:2018-06-29 16:30:59
【问题描述】:
我有一个 varchar 列,其中包含逗号分隔的数字。
我想获取该列中的最大数量。
+-------------------+--------------+
| reference_no | Name |
+-------------------|--------------+
| 17530, 20327 | John |
| , 14864 | Smith |
| 8509 | Michael |
| 14864, 17530 | Kelly |
+-------------------+--------------+
因此,在上述列 (reference_no) 示例中,输出应为 20327。
然后我必须选择包含这个数字的行。
【问题讨论】:
-
你能先修复数据吗?对于此类数据,没有任何查询可以有效!
-
规范化你的数据——现在你需要使用string splitter
-
我正在使用下面的查询对其进行规范化,但它没有给出所需的输出。 select substring(reference_no,charindex(',',reference_no)+1,len(reference_no)-charindex(',',reference_no)), reference_no from table_name
标签: sql-server numbers integer max varchar