Мне нужна помощь в синтаксисе mysql.
В моей таблице есть информация о пользователе, но один и тот же номер заказа для отправки и выставления счета.
Иногда люди выбирают доставку на свой платежный адрес; Мне нужна только запись номера заказа, где пользователи не вводили адреса доставки и где они вводили адрес доставки.
Если они ввели и адрес для выставления счета, и адрес доставки, мне нужен только адрес доставки, если это имеет смысл.
В таблице иногда дублируются поля для одного номера заказа. Если это сбивает с толку, посмотрите ниже:
------------SQL TABLE -----------
order_id | address_type | user_name | address
100 | billto | Homer Simposn | 123 Main St.
100 | shipto | Homer Simpson | 455 XYZ Ave.
101 | billto | Peter Griffin | 780 111th St.
102 | billto | Charles Xavier | 555 Bergen St.
102 | shipto | Jean Gray | 555 Bergen St.
Мне нужно, чтобы вывод был:
100 - shipto - Homer Simposn - 455 XYZ Ave.
101 - billto - Peter Griffin - 780 111th St.
102 - shipto - Jean Gray - 555 Bergen St.
Вот мой синтаксис, который будет возвращать только записи "shipto".
SELECT * FROM order_info AS A WHERE A.address_type = 'shipto' AND
NOT EXISTS (SELECT B.address_type
from order_info AS B
where B.address_type = A.address_type
and B.address_type = 'billto')
Я хотел бы сделать что-то вроде IF
, shipto
нет, а затем вернуть billto
. Возможно ли сделать все в синтаксисе sql?
Спасибо!