0

我有表t1(name,phone,adress)并想创建视图vw_1。我正在寻找类似的基本逻辑:-

create view vw_1 (col1,col2)
as
if(t1.name is null)then 
select adress,phone from t1
else
select name,phone from t1
4

1 回答 1

2

使用coalesce函数(doc 用于 SQL Server,但它是一个经典的 ANSI 运算符,并且适用于我所知道的所有 DBMS)。

create view vw_1 (col1,col2)
    as
    select coalesce(name, adress), phone 
    from t1

如果您的意思是“NULL OR EMPTY”,那么

CREATE VIEW vw_1(col1, col2)
  AS
  SELECT CASE WHEN COALESCE(name, '') = '' THEN adress else name END,
  phone
  FROM t1

sqlFiddle

于 2013-02-01T20:41:57.983 回答