我用SQL将.csv文件克隆到我的数据库表中,示例数据如下:
[
{
"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
发布于 2021-09-17 20:14:01
如果您使用的是MySQL或MariaDB,并且只对十进制数感兴趣,则可以像这样使用CAST:
SELECT CAST(profit as DECIMAL(5,2)) as profit_mod;对于非数值,这将为您提供0.00。或者,您可以转换为整数以获取整数-或者转换为0以获取非数字值。
根据您的sql种类,您可能有不同的选项。
https://stackoverflow.com/questions/69228560
复制相似问题