================请问如何截取数据库中数字字段的整数部分?=================

blueskywjs 2006-09-01 09:19:47
例如:数据表t_money中有个m_money字段,money类型

select floor(m_money) from t_money可以取出m_money的整数,可是floor好像对比较大的数字不可以。

请问还有其他的函数吗?注意,不能四舍五入,例如:23.56 我要取得23,而不是24.

谢谢!
...全文
252 15 打赏 收藏 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
fantiny 2006-09-01
  • 打赏
  • 举报
回复
语言不是sql里面用fix()
blueskywjs1 2006-09-01
  • 打赏
  • 举报
回复
我要求的数字不一定是多少位的,楼上给的方法实现起来很麻烦,谢谢
penglewen 2006-09-01
  • 打赏
  • 举报
回复
just tell me what do you want ???????????
blueskywjs1 2006-09-01
  • 打赏
  • 举报
回复
谢谢楼上两位,这些方法都不是太好,round不太合适
penglewen 2006-09-01
  • 打赏
  • 举报
回复
select round(m_money-0.5,0) from t_money
or
select left(m_money,2)from t_money
sailorsailor 2006-09-01
  • 打赏
  • 举报
回复

select round(23.56-0.5,0) from dual;
你可以试试,很好用 不管数字是多少 应该都能满足
blueskywjs 2006-09-01
  • 打赏
  • 举报
回复
xiexie
blueskywjs 2006-09-01
  • 打赏
  • 举报
回复
在没有人解答就去别的论坛了,呵呵
blueskywjs 2006-09-01
  • 打赏
  • 举报
回复
没人知道吗
btbtd 2006-09-01
  • 打赏
  • 举报
回复
呵呵, 恭喜, 这个convert 函数有太多的参数, 还没好好研究过呀...
btbtd 2006-09-01
  • 打赏
  • 举报
回复

INSTR(data, expression) -> CHARINDEX(expression, data)

This function returns an integer representing the character where the search expression is found within the data parameter. Note that the order of these parameters is reversed!

-- Access:
SELECT INSTR("franky goes to hollywood","goes")

-- SQL Server:
SELECT CHARINDEX('goes','franky goes to hollywood')

blueskywjs 2006-09-01
  • 打赏
  • 举报
回复
可以了。

select convert(int,t_money) from t_money
blueskywjs 2006-09-01
  • 打赏
  • 举报
回复
我需要的是sql语句,谢谢
blueskywjs 2006-09-01
  • 打赏
  • 举报
回复
服务器: 消息 195,级别 15,状态 10,行 1
'instr' 不是可以识别的 函数名。
btbtd 2006-09-01
  • 打赏
  • 举报
回复
使用 left + instr 就行呀, SQL 与 AC 稍有不同.

28,402

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧