SQL默认值
我有一个select语句,它生成一个类型和数量: 我通常有以下几点SQL默认值,sql,Sql,我有一个select语句,它生成一个类型和数量: 我通常有以下几点 Type Qty TypeOne 1 TypeTwo 23 TypeThree 1 比如说,在特定情况下,我不会得到返回的两个值: Select Type, Qty from Tbl1 我的数据看起来像 Type Qty TypeOne 1 TypeThree 1 如果我没有得到一个特定的值,我希望将其默认为(在这种情况下,由于TypeTwo不存在,我希望将其默认为0并添加该
Type Qty
TypeOne 1
TypeTwo 23
TypeThree 1
比如说,在特定情况下,我不会得到返回的两个值:
Select Type, Qty from Tbl1
我的数据看起来像
Type Qty
TypeOne 1
TypeThree 1
如果我没有得到一个特定的值,我希望将其默认为(在这种情况下,由于TypeTwo不存在,我希望将其默认为0并添加该条目)
类型数量
TypeOne 1
TypeTwo 0
TypeThree 1
一种简单的方法是创建一个包含列类型和默认值的类型表,然后可以执行以下操作
Select
type.Type,
COALESCE(tbl1.Qty,type.default) qty
from
type
LEFT JOIN Tbl1
ON type.type = tbl1.type
如果没有类型表,根据数据库的不同,您可以创建一个临时表,或者使用WITH子句
来创建类型和默认值之间的映射以及类型列表
比如说
With Type
( SELECT `TypeOne` type, 0 default
UNION ALL SELECT `TypeTwo` type, 4 default
UNION ALL SELECT `TypeThree` type, 3 default )
Select
type.Type,
COALESCE(tbl1.Qty,type.default) qty
from
type
LEFT JOIN Tbl1
ON type.type = tbl1.type
一种简单的方法是创建一个包含列类型和默认值的类型表,然后可以执行以下操作
Select
type.Type,
COALESCE(tbl1.Qty,type.default) qty
from
type
LEFT JOIN Tbl1
ON type.type = tbl1.type
如果没有类型表,根据数据库的不同,您可以创建一个临时表,或者使用WITH子句
来创建类型和默认值之间的映射以及类型列表
比如说
With Type
( SELECT `TypeOne` type, 0 default
UNION ALL SELECT `TypeTwo` type, 4 default
UNION ALL SELECT `TypeThree` type, 3 default )
Select
type.Type,
COALESCE(tbl1.Qty,type.default) qty
from
type
LEFT JOIN Tbl1
ON type.type = tbl1.type
我们需要查看整个
SELECT
语句。您是说要查看数量为0的行吗?您是在询问在表级别设置默认值以便结果中不包含空值吗?我们需要查看整个SELECT
语句。您是说要查看数量为0的行吗?您是在询问吗关于在表级别设置默认值以便结果中不包含空值?