У меня есть две таблицы. У одного есть статьи (article
), какие статические страницы на сайте. Во вторых есть статьи в блогах (blog_article
), статьи которых показаны только на странице блога.Выберите или создайте просмотр из последних 3 статей из более чем 1 таблицы
Теперь я хочу показать последние статьи на date
на моей домашней странице. Легко показать последние 3 из article
или blog_article
, но у меня есть проблема, чтобы сделать это с обоих сразу.
Обе таблицы имеют одинаковую структуру, за исключением article
, где я хочу получить строки только с cat_id = 3
.
Это article
:
|----------------------------------------------------------|
| id | name | content | date | cat_id |
|----------------------------------------------------------|
| 1 | Test 1 | ... | 2016-01-24 18:26:00 | 3 |
| 2 | Test 2 | ... | 2016-01-29 18:26:00 | 3 |
| 3 | Test 3 | ... | 2016-02-07 18:26:00 | 4 |
| 4 | Test 4 | ... | 2016-02-18 18:26:00 | 1 |
| 5 | Test 5 | ... | 2016-03-15 18:26:00 | 3 |
|----------------------------------------------------------|
Это blog_article
:
|----------------------------------------------------------|
| id | name | content | date |
|----------------------------------------------------------|
| 1 | Blog 1 | ... | 2016-03-01 18:26:00 |
| 2 | Blog 2 | ... | 2016-03-10 18:26:00 |
| 3 | Blog 3 | ... | 2016-04-08 18:26:00 |
|----------------------------------------------------------|
Что я ожидаю, чтобы вернуться:
|----------------------------------------------------------|
| id | name | content | date |
|----------------------------------------------------------|
| 1 | Blog 3 | ... | 2016-04-08 18:26:00 |
| 2 | Test 5 | ... | 2016-03-15 18:26:00 |
| 3 | Blog 2 | ... | 2016-03-10 18:26:00 |
|----------------------------------------------------------|
Я попробовал эту команду
SELECT article.name AS name, blog_article.name AS name
FROM article,
blog_article
WHERE article.cat_id = 3
ORDER BY article.date DESC
LIMIT 3
, но без помощи. Я не очень хорош в SQL, я использую только SELECT
, UPDATE
, DELETE
... основные команды.
Или создайте представление, но, тем не менее, не удастся выполнить команду выше.
Поиск для 'UNION ALL'. –
Кроме того, ваше соединение не имеет условий соединения! Пропустите этот старый, неявный, разделенный запятой синтаксис соединения, используйте только современный явный синтаксис 'join'! – jarlh
@FelixPamittan спасибо, я думаю, что у меня есть – debute