объединить две таблицы и упорядочить по общему полю, например по имени, которое присутствует в обеих таблицах - PullRequest
2 голосов
/ 20 января 2011

У меня есть две таблицы a и b, в которых есть имя поля.

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

Я хочу упорядочить по имени поля, чтобы результат был смешан из двух таблиц.в порядке имени, то есть порядок по имени.

Ответы [ 3 ]

3 голосов
/ 20 января 2011
select slug, name, 1 as mt 
  from tablea 
union 
select slug, name, 0 as mt 
  from tableb 
 order 
    by name;

Вышесказанное работает хорошо для меня.будут ли осложнения в результате этого?

0 голосов
/ 20 января 2011

Или вы можете использовать запрос Join, такой как:

SELECT tablea.firstname, tablea.middlename, tablea.lastname, tableb.phone 
FROM tablea, tableb 
WHERE tablea.ID = tableb.ID

Затем вы можете отсортировать результат по своему вкусу.

0 голосов
/ 20 января 2011

Предположим, ваш запрос

SELECT field1 FROM TABLE1 WHERE 1 
UNION SELECT field1 FROM TABLE2 WHERE 1

вы можете сделать из него подобный подзапрос

 SELECT * FROM (SELECT field1 FROM TABLE1 WHERE 1 
UNION SELECT field1 FROM TABLE2 WHERE 1) AS `result` ORDER BY `result`.`field1`
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...