CREATE TABLE Customer(
customer_id INT NOT NULL,
first_name VARCHAR(20),
last_name VARCHAR(20),
PRIMARY KEY (customer_id)
);
CREATE TABLE Payment(
customer_id NOT NULL,
year YEAR,
payment_amount INT,
FOREIGN KEY (customer_id) REFERENCES Customer(customer_id)
);
Вот запрос, который я использую:
SELECT Customer.first_name, Payment.year
FROM Customer
LEFT JOIN Payment
ON Customer.customer_id = Payment.customer_id
WHERE Payment.year = 2008;
Теперь, скажем, у меня было три клиента Джон, Боб и Энн.Джон и Энн осуществили платежи в 2008 году, но Боб этого не сделал. Результат этого запроса:
имя_год года
Джон 2008
Энн 2008
но я хочу:
имя_имя года
Джон 2008
Энн 2008
Боб NULL
Так что я знаю, что мне нужна строка, которая говорит что-то вроде tenant_id, если такой оплаты за равенство нет.год = 2008, чем вернуть NULL, но я не уверен, как это сделать.Спасибо!