Мне нужно создать представление, чтобы показать обзор заказов в моей базе данных. В обзоре не нужны элементы заказа, только идентификатор заказа, дата заказа, имя клиента, сумма заказа и статус заказа. В базе данных есть 2 таблицы с данными о клиентах (одна для зарегистрированных пользователей и одна для незарегистрированных пользователей), соответственно shop_customer и shop_temp_customer.
Мне нужно, чтобы представление извлекало имя и фамилию клиента из соответствующей таблицы, чтобы ее можно было отобразить на странице обзора моего заказа.
Вот структуры таблиц:
shop_orders:
Column Name Column Type Null Default
order_id int(11) No None
order_date int(255) No None
order_customer_id int(11) Yes NULL
order_temp_customer_id int(11) Yes NULL
order_postage double(11,2) No None
order_discount double(11,2) No None
order_total double(11,2) No None
order_status tinyint(1) No None
shop_customers:
Column Name Column Type Null Default
customer_id int(11) No None
customer_title varchar(255) No None
customer_forename varchar(255) No None
customer_surname varchar(255) No None
customer_company varchar(255) No None
customer_contact_number varchar(255) No None
customer_email varchar(255) No None
customer_password varchar(255) No None
customer_reference varchar(255) No None
customer_marketing tinyint(1) No None
customer_active tinyint(1) No None
customer_decomission_date int(11) No None
shop_temp_customers:
Column Name Column Type Null Default
temp_customer_id int(11) No None
temp_customer_title varchar(255) No None
temp_customer_forename varchar(255) No None
temp_customer_surname varchar(255) No None
temp_customer_company varchar(255) No None
temp_customer_contact_number varchar(255) No None
temp_customer_email varchar(255) No None
temp_customer_reference varchar(255) No None
temp_customer_decomission_date int(11) No None
Вот мой код для представления, но он не тянет никакие элементы данных в:
CREATE VIEW shop_order_view_all_preview AS
SELECT o.order_id, o.order_date, c.customer_forename, c.customer_surname, tc.temp_customer_forename, tc.temp_customer_surname, o.order_total, o.order_status
FROM shop_orders o
RIGHT JOIN shop_customers c
ON c.customer_id = o.order_customer_id
RIGHT JOIN shop_temp_customers tc
ON tc.temp_customer_id = o.order_customer_id
Есть идеи?
EDIT:
Вот некоторые данные из таблиц:
shop_orders:
order_id order_date order_customer_id order_temp_customer_id order_postage order_discount order_total order_status
1 1322697540 2 NULL 12.50 0.00 1012.50 0
2 1322697540 NULL 1 13.00 0.00 1200.00 1
shop_customer:
customer_id customer_title customer_forename customer_surname customer_company customer_telephone customer_email customer_password customer_reference customer_marketing customer_active customer_decomission_date
2 Mr b a d 044444 a@test.com 098f6bcd4621d373cade4e832627b4f6 Poster / Flyer 1 1 0
shop_temp_customer:
temp_customer_id temp_customer_title temp_customer_forename temp_customer_surname temp_customer_company temp_customer_contact_number temp_customer_email temp_customer_reference temp_customer_decomission_date
1 Mr e asy NULL 04444 test@test.com Google 1322697540