SQL 用 NULL 或文本替换零个 0 值
SQL replace zero 0 values with NULL or text
我有 table 个产品
某些 ProductPrice 值为 0(类型为 decimal(10,0))
ID | Productname | ProductPrice |
+----+-------------+--------------------------------------+
| 1 | ShirtXS | 299 |
| 2 | TrousersM | 0 |
ProductPrice 为 DECIMAL(10,0)。
如何使用 NULL 或文本 N/A?
将 SQL 查询写入 convert/replace ProductPrice 值 0
期望的输出:
ID | Productname | ProductPrice |
+----+-------------+--------------------------------------+
| 1 | ShirtXS | 299 |
| 2 | TrousersM | NULL or N/A |
为此使用 case
表达式:
SELECT Productname ,
CASE WHEN ProductPrice = 0 THEN NULL
ELSE ProductPrice
END as ProductPrice
FROM table
我不确定您要查找的是 UPDATE
还是 SELECT
。如果您正在寻找 SELECT
,您可以使用 MySQL 中的 NULLIF()
将 0
替换为 NULL
。语法如下:
SELECT *,NULLIF(<column_name>,0) as <variable_name> from <table_name>;
我有 table 个产品
某些 ProductPrice 值为 0(类型为 decimal(10,0))
ID | Productname | ProductPrice |
+----+-------------+--------------------------------------+
| 1 | ShirtXS | 299 |
| 2 | TrousersM | 0 |
ProductPrice 为 DECIMAL(10,0)。
如何使用 NULL 或文本 N/A?
将 SQL 查询写入 convert/replace ProductPrice 值 0
期望的输出:
ID | Productname | ProductPrice |
+----+-------------+--------------------------------------+
| 1 | ShirtXS | 299 |
| 2 | TrousersM | NULL or N/A |
为此使用 case
表达式:
SELECT Productname ,
CASE WHEN ProductPrice = 0 THEN NULL
ELSE ProductPrice
END as ProductPrice
FROM table
我不确定您要查找的是 UPDATE
还是 SELECT
。如果您正在寻找 SELECT
,您可以使用 MySQL 中的 NULLIF()
将 0
替换为 NULL
。语法如下:
SELECT *,NULLIF(<column_name>,0) as <variable_name> from <table_name>;