c# - 在 C# 中的 sql 查询中对数字字符串进行排序
问题描述
我在数据表的列中有这些数据:
j1
ds2
b15
我需要选择并排序此列。使用以下代码:
var drs = inpDataTable.Select($"myCol<> 'jj'", "myCol Desc");
返回错误答案!:
j1
b15
ds2
我怎样才能得到真实的答案?字符并不重要。我正在使用 SQL Server
解决方案
如果您只想按数字排序,mycol
则需要PATINDEX
如下:
order by cast(SUBSTRING(mycol, PATINDEX('%[0-9]%', mycol), LEN(mycol)) as INT)
推荐阅读
- laravel - if else 条件未按请求加载
- reactjs - React - 无法从后端更改预填充的输入值
- mpi - 为什么我的 mpi 代码只在集群的一个节点上运行?
- r - 为什么barplot中的某些条上只有误差线?
- java - 我是新手我需要一些帮助我想添加一个如果一个数字是负数它应该打印某种警告并让他们再次输入
- kubernetes - 如何通过 kubernetes 准入控制器修补 pod 的容器规范以使用我的 exec 版本启动容器?
- python - 从 numpy 数组中采样固定长度的序列
- linux - 如何在 powershell 中只获得一行命令输出?
- python - 使用 plotly python 选择多个列进行绘图
- c - 如何从函数跳回main?