数据库中CAST 和 Convert 的用法

    今天一上班老大要求我改善我们网站系统的注册机制。之前我们是严格区分大小写的,所以会出现同一个登陆名的各种写法,比如说admin,Admin,aDmin,ADMIN等等。今天他要求我用户可以注册他想要的大小写字母,不过一旦某个用户名被注册了,它的其他形式一律被算为存在的。

 

    因为我之前接触数据库不多,所以想了半天没想出什好方法,最后愚蠢的决定先把全部用户的用户名查询出来赋给一个数组,再把数组值一个字母一个字母的对比。不过很快放弃了这个世纪笑话,开始摸索。就这样在微软MSDN上我看到了CAST的用法。 用CAST来取数据库中的某字段lowercase值,这方法又简单又方便,恨自己没好好学。用法很简单对于我的例子具体用法如下:

 

   

在第5行取用Ajax传来用户要注册的username值,再用第6行的函数转换成小写字母的值。

最后在SQL语句中使用CAST来去数据表中的值与之前的值对比就可以了,如果存在一样字母顺序组成的用户名就返回true,若不存在则反之。

 

 

再举几个例子

 

1, 每个示例都检索列表价格的第一位是 3 的产品的名称,并将 ListPrice 转换为 int

 

 

以下示例将本年度截止到现在的全部销售额 (SalesYTD ) 除以佣金百分比 (CommissionPCT ),从而得出单列计算结果 (Computed )。在舍入到最接近的整数后,将此结果转换为 int 数据类型。

 

下面是结果集:

 

以下示例使用 CAST 连接非字符型非二进制表达式。

下面是结果集:

 

以下示例将 moneySalesYTD 转换为 int 列,然后再转换为 char(20) 列,以便可以将其用于 LIKE 子句。

下面是结果集:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值