ORDER BY
case when len(a.ProdNo)>0 and charindex('-',reverse(a.ProdNo))-1>0
then
case when PATINDEX('%[A-Za-z]%',right(a.ProdNo, charindex('-',reverse(a.ProdNo))-1))=0
then convert(int,right(a.ProdNo, charindex('-',reverse(a.ProdNo))-1))
end
end
本文探讨了在 SQL 查询中对特定字段 ProdNo 进行复杂条件判断和转换以实现有效排序的方法。通过使用 case when 语句结合 len、charindex 和 right 函数,可以对 ProdNo 字符串进行解析并根据其字母或数字部分进行转换和排序。
524

被折叠的 条评论
为什么被折叠?



