我有一张桌子
CREATE TABLE IF NOT EXISTS club.climbers
(
climber_id SERIAL PRIMARY KEY,
climber_first_name VARCHAR(20) NOT NULL,
climber_last_name VARCHAR(30) NOT NULL,
climber_full_name TEXT GENERATED ALWAYS AS (climber_first_name || ' ' || climber_last_name) STORED NOT NULL,
sex_id INTEGER NOT NULL REFERENCES club.sex,
climber_date_birth DATE NOT NULL,
climber_phone VARCHAR(20) NOT NULL,
postal_code_id INTEGER REFERENCES club.postal_codes,
street VARCHAR(75) NOT NULL,
building VARCHAR(5) NOT NULL,
apartment VARCHAR(5),
full_address TEXT GENERATED ALWAYS AS (street || ',' || building || '-' || apartment) STORED
);
但是apartment
可以是空的,那么full_address
也是空的.我需要忽略从apartment
开始的空值.
我试着用CONCAT
和COALESCE
,但我不知道当apartment
为空时如何 suppress 悬挂的‘-’.