Warm tip: This article is reproduced from serverfault.com, please click

mysql-有没有一种方法可以将空字符串替换为MariaDB中的NULL值?

(mysql - Is there a way to replace empty string into NULL value in MariaDB?)

发布于 2020-12-03 01:10:07

这是我的问题的简化版本:

CSV文件:

| id | colA | colB |
| 1  |      |  1.5 |
| 2  |      |  2.2 |
| 3  |  3.3 |  3.5 |

...

我正在尝试执行“加载数据本地文件”操作,但是在“ colA”的前两个条目上我不断收到警告:因为当DB读取文件时,它们是DB的空字符串。

有什么办法可以在加载数据步骤中替换它们?

非常感谢!

Questioner
windsound
Viewed
11
Barmar 2020-12-03 09:46:27

使用用户变量来转换列

LOAD DATA LOCAL INFILE "filename"
INTO TABLE tablename
(id, @colA, @colB)
SET colA = NULLIF(@colA, ''), colB = NULLIF(@colB, '')