2016-10-04 1 views
0

Надеюсь, что название лучше всего соответствует моему намерению.Сопоставьте ячейки в двух таблицах, не используя ключ foregin

Вот моя установка

ТАБЛИЦА Клиенты

*---------------------------------------* 
|c_id|f_name |l_name | carrier| referral| 
| 1 | Jane | Doe | AT&T | Google | 
| 2 | James | Kahn | Sprint | Repeat | 
| 3 | Jim | Flores| Verizon| Walk-in | 
*---------------------------------------* 

ТАБЛИЦА Перевозчики

*----------------* 
|car_id|car_name | 
| 1 | AT&T | 
| 2 | T-Mobile| 
| 3 | Verizon | 
| 4 | Sprint | 
*----------------* 

Таблица Результаты

*---------------------------------------* 
|c_id|f_name |l_name | carrier| referral| 
| 1 | Jane | Doe | 1 | Google | 
| 2 | James | Kahn | 4 | Repeat | 
| 3 | Jim | Flores| 3 | Walk-in | 
*---------------------------------------* 

Это моя дилемма. Когда информация о клиентах вводится из «Front-end», она входит в таблицу клиентов с именем оператора, а не с внешним ключом. Как я могу настроить свой запрос так, чтобы он отображался с именем оператора из таблицы несущей, а не с колонкой несущей таблицы клиента.

Это то, что я пробовал, но он не заполняется, когда я ввожу его в свой запрос.

$sql = "SELECT f_name, l_name car_name, referral FROM customers JOIN carriers "; 
$sql .="ON customers ON customers.carrier = carriers.car_id ORDER BY c_id DESC"; 

Я понимаю, что это звучит бесполезно, так как данные, которые я хочу отображать, уже отображаются. Однако, когда данные в этой таблице обрабатываются позже в процессе моих проектов, внешний ключ используется и отображается правильно. Вешайте трубку, когда данные поступают в таблицу результатов. Я искал и использовал REGEXP, но точно не знаю, как это использовать.

+0

что это за результаты таблицы? – e4c5

+0

Это не таблица БД, а HTML-таблица эха, которая отображает результаты. Не уверен, что это помогло ответить на ваш вопрос. –

+0

Хорошо, ваша таблица результатов - как ее следует хранить в базе данных, а таблица клиентов - как она должна отображаться! – e4c5

ответ

1

Пожалуйста, попробуйте этот

select * from Customers c1 inner join Carriers c2 where c1.carrier = c2.car_name 
+0

Это было полезно. Спасибо. –

+0

Как мне настроить этот запрос для присоединения к другой таблице, аналогичной несущей? Для аргументации позвоните в таблицу рефералов. –

Смежные вопросы