首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何查询在sql中存储为varchar的有效整数?

问如何查询在sql中存储为varchar的有效整数?
EN

Stack Overflow用户
提问于 2021-09-17 19:25:36
回答 1查看 34关注 0票数 0

我用SQL将.csv文件克隆到我的数据库表中,示例数据如下:

代码语言:javascript
复制
[
    {
        "year": "1955",
        "rank": "1",
        "company": "General Motors",
        "revenue": "9823.5",
        "profit": "806"
    },
    {
        "year": "1955",
        "rank": "2",
        "company": "Exxon Mobil",
        "revenue": "5661.4",
        "profit": "584.8"
    },

有些利润列有"N.A.",也有负整数,但这些值在SQL表中都存储为"strings“或VARCHAR。

那么,如何查询数字或不等于"N.A.“的数据呢?(基本上我只想要包含任何整数、正数或负数的数据)?我试过ISNUMERIC(),但它说我需要进行类型转换?

sql

EN

回答 1

Stack Overflow用户

发布于 2021-09-17 20:14:01

如果您使用的是MySQL或MariaDB,并且只对十进制数感兴趣,则可以像这样使用CAST:

代码语言:javascript
复制
SELECT CAST(profit as DECIMAL(5,2)) as profit_mod;

对于非数值,这将为您提供0.00。或者,您可以转换为整数以获取整数-或者转换为0以获取非数字值。

根据您的sql种类,您可能有不同的选项。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69228560

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档