首页 > 解决方案 > SQL如何在使用INSERT INTO添加到表之前检查值的类型?

问题描述

如果出现以下情况,我需要在我的数据库中插入一个值:

  1. 它不为空
  2. 它只是任何类型的数字(int,decimal ...)

我的查询如下:

INSERT INTO my_table

(SELECT field_name, field_value FROM source_table WHERE field_value IS NOT NULL)

假设我有这张桌子:

在此处输入图像描述

在这个例子中我有兴趣添加的唯一字段是 f1 和 f2。

标签: sqlsnowflake-cloud-data-platform

解决方案


只需使用 TRY_TO_NUMBER 转换值并添加 WHERE 子句“WHERE TRY_TO_NUMBER(field_val) is not null”


推荐阅读