2014-09-06 3 views
0

Я создаю БД, которая имеет следующие таблицы:MySQL: выбрать из двух таблиц с помощью таблицы поиска

проблемы -> p_index, название, описание

решения -> s_index, имя, описание

Любая проблема может иметь множество решений. Аналогичным образом любое решение может применяться к нескольким проблемам.

Поэтому у меня есть справочная таблица под названием «Кадайте»:

Кадай -> проблема, решение

где проблемы и решениями являются целыми числами, которые соответствуют p_index и s_index.

Как выбрать problem.name, solutions.name, если задано целое число, соответствующее задаче . например:

SELECT problems.name, solutions.name FROM problems, solutions 
INNER JOIN problems ON kadai.problem = problems.p_index 
INNER JOIN solution ON kadai.solution = solutions.s_index 
WHERE problems.p_index = 2; 

Это одна из длинной очереди безуспешных решений. Как это делается?

ответ

3

Это должно работать:

SELECT problems.name, solutions.name FROM problems 
INNER JOIN kadai ON kadai.problem = problems.p_index 
INNER JOIN solution ON kadai.solution = solutions.s_index 
WHERE problems.p_index = 2; 

Регистрация "проблемы" с "Кадай" и "Кадай" с "решениями".

+0

Это работает, спасибо большое. – grooble

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