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

У меня есть две таблицы, и мне нужно вызвать данные из обеих с одним и тем же номером идентификатора (разные имена)

Я попытаюсь привести пример

Таблица 1

|  psid   |   idd   |
|  1      |    999  |
|  2      |    42   |

Таблица 2

|  aid     |      other      |
|  999     |    hello world  |
|  42      |    welcome      |

Я пытаюсь связать idd и помощь при отображении всех строк из первой таблицы

Примере

  • id = 1 / Название: привет, мир

  • id = 2 / Title: добро пожаловать

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

Я не много искал, так как не знаю, что искать.

Спасибо и извините

0
Richard Ransom 6 Янв 2016 в 16:31

2 ответа

Лучший ответ

Декартово соединение

SQLFiddle

select 
  table1.*, 
  table2.* 
from 
  table1, 
  table2 
where 
  table1.idd = table2.aid and 
  table1.idd = :id

Или Left Join

SQL Fiddle

select
  t1.*,
  t2.*
from 
  table1 t1
left join
  table2 t2
on 
  t1.idd = t2.aid
where 
  t1.idd = :id
2
I wrestled a bear once. 6 Янв 2016 в 14:06
SELECT table1.psid, table2.other FROM table1
JOIN table2 ON table1.idd = table2.aid
WHERE table1.idd= 'X' AND table2.aid = 'X'

Это должно СОЕДИНЯТЬ две таблицы вместе и, указав соответствующие идентификаторы для каждой таблицы в предложении WHERE, должно получить соответствующую информацию.

EDIT исправленный SQL

1
Haymaker 6 Янв 2016 в 13:47