sqlserver中将varchar类型转换为int型再进行排序的方法

如果我们数据库的ID设置为varchar型的 在查询的时候order by id的话我们是不希望看到如下情况的。

我们可以把varchar转换为int 然后进行排序

一、
复制代码 代码如下:
select * from yourtable order by cast(yourcol as int);

适用于SQLServer Oracle

二、
复制代码 代码如下:
select * from yourtable order by convert(int,yourcol);

仅适用于SQLServer

作者 itmyhome

时间: 2024-10-29 23:16:01

sqlserver中将varchar类型转换为int型再进行排序的方法的相关文章

sqlserver中将varchar类型转换为int型再进行排序的方法_MsSql

如果我们数据库的ID设置为varchar型的 在查询的时候order by id的话我们是不希望看到如下情况的. 我们可以把varchar转换为int 然后进行排序 一. 复制代码 代码如下: select * from yourtable order by cast(yourcol as int); 适用于SQLServer Oracle 二. 复制代码 代码如下: select * from yourtable order by convert(int,yourcol); 仅适用于SQLSe

在c#中将double型使用convert.ToInt转换为int型的小数点取舍问题,求大神解答

问题描述 在c#中将double型使用convert.ToInt转换为int型的小数点取舍问题,求大神解答 解决方案 解决方案二:double转成int,无非就是小数点第一位的取舍问题了,如果要四舍五入,那么+0.5之后再转解决方案三:四舍五入有专门的函数,你可以直接调用,如果强制转换话,只是取得整数部分

空指针 隐式类型转换-空指针0可以被隐式类型转换为整型,会带来什么隐患?

问题描述 空指针0可以被隐式类型转换为整型,会带来什么隐患? 以前都是用0来表示空指针的,但由于0可以被隐式类型转换为整形,这就会存在一些问题. 解决方案 一个是语义上的,NULL用来表示空指针,而0是数字的概念,分别开来,从语法上好理解和区分,防止混淆 防止隐式转换,比如该是指针的地方,却用了数字,该是数字的地方却用了指针. 所以在C++11中,引入了nullptr的关键字来代替NULL,它就不是数字0了 解决方案二: 有一些细节问题,比如 if (p = 0) 由于将==写成了=,结果将p设

c++-为什么将sum和c类型变成int型就报错了

问题描述 为什么将sum和c类型变成int型就报错了 #include using namespace std; int main() { int a,c=-1; double avg,sum=1.0; cout << "请输入要统计的数字:"; do{ cin >> a; c++; sum = sum + a; avg = sum / c; if (a==0) break; } while (1); const int d=c; cout << &

string数组类型转换为int数组(数组类型之间的转换)

string数组类型转换为int数组.方法一:ConvertAll的用法 1 public static int StrToInt(string str)2 {3 return int.Parse(str);4 }5 6 string[] arrs = new string[] { "100", "300", "200" };7 int[] arri = Array.ConvertAll(arrs,

类型转换 int-TextBox数值转换为int型

问题描述 TextBox数值转换为int型 输入字符串的格式不正确. 说明: 执行当前 Web 请求期间,出现未经处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息. 异常详细信息: System.FormatException: 输入字符串的格式不正确. 源错误: 行 27: 行 28: string s = Eid.Text.Trim(); //去除首尾的空格是个好习惯 行 29: essay.eid = int.Parse(s); 行 30: // essa

JSP页面将string转换为int型然后求积

问题描述 我定义了一个intnum=0;需要它乘以db.getChar(rs.getString("cost")),怎样将db.getChar(rs.getString("cost"))转换为int型呀?我用<%=num*((int)(db.getChar(rs.getString("cost"))))%>求,是错误的,请各位帮帮忙呀!!!先在这谢谢啦 解决方案 解决方案二:Integer.parseInt(Strings),这个函数

关于SQL Server中将数值类型转换为字符串的问题

今天在把一些数据导入到SQL Server的时候遇到有个列被导入成float类型,而我实际需要的是varchar类型,所以要进行类型转换,转换时遇到了一点问题,所以写这篇博客记录一下. SQL Server中的数值类型分为两种,一种是精确的数值类型,具体的数据类型有:bit.tinyint.smallint.int.bigint.smallmoney.money和decimal,这些数据类型能够精确的表明某以数值:另一种是近似的数值类型,具体就是float和real.浮点数据为近似值,因此,并非

C#中将字符串转换为整型的三种解决方法总结

在C#中,要将一个字符串或浮点数转换为整数,基本上有三种方法: (1)使用强制类型转换:(int)浮点数 (2)使用Convert.ToInt32(string) (3)使用int.Parse(string)或int.TryParse(string,out int) 在实际使用时,当要转换的字符串或数字带有小数时,发现它们有以下区别: (1)方法一:截断 方法二:四舍五入int a=(int)2.8; //结果为2 int b=Convert.ToInt32(2.8); //b的值为3 (2)i