|
|
|
| Здравствуйте Стоит задача выборки из двух таблиц обним запросом решаю ее вот таким образом:
SELECT date_news.name
AS name, date_news_theme.theme
AS theme
FROM date_news, date_news_theme
WHERE date_news.themeID=date_news_theme.themeID
ORDER BY date_news_theme.theme
|
Хотелось бы узнать есть ли более легкий путь? без подробного указания что от куда берется
Слышал вроде как есть, что то "именованное" Но что это и как работает так и не понял. | |
|
|
|
|
|
|
|
для: indexer
(02.11.2006 в 00:01)
| | Можно действовать следующим образом
SELECT date_news.*
FROM date_news, date_news_theme
WHERE date_news.themeID=date_news_theme.themeID
ORDER BY date_news_theme.theme
|
| |
|
|
|
|
|
|
|
для: cheops
(02.11.2006 в 01:52)
| | А можно так:
select dn.name,dnt.theme
from date_news dn
inner join date_news_theme dnt on dnt.themeID=dn.themeID
order by dnt.theme
Но, помоему, структура базы данных посторена не очень оптимально | |
|
|
|
|
|
|
|
для: cia
(02.11.2006 в 09:54)
| | Спасибо cia
вот только не понятно, что такое dn и dnt
рискну предположить что это
dn-dataname
dnt-datanametheme
Существуют ли ограничения на имена?Или ставь любое лишь бы сам понял?
или как я уже и говорил это что то именованое, принцип работы понятен, а осмыслить все это что то не получается.
База построена оптимально, просто неудачный пример привел.
Структура строилась из расчета неповторяемости и независимости данных,
существуют разделы, разбитые на темы, а темы в свою очередь на подтемы, вот такая вот сложная структура + каждый раздел можно коментировать. все это попытался внести в 4 таблицы, структура базы разработана и работает, но тут я попытался экономить на запросах к базе, а именно объединять запрос к разным таблицам, и споткнулся об объединение.
SELECT * не подходит изначально могут такого населектить мало не покажется. | |
|
|
|
|
|
|
|
для: indexer
(10.11.2006 в 05:04)
| | >вот только не понятно, что такое dn и dnt
from date_news dn -- отсюда видно, что dn - синоним date_news
inner join date_news_theme dnt -- отсюда видно, что dnt - синоним date_news_theme
Поглядите в описании SELECT ... FROM ... JOIN на конструкции NATURAL JOIN и JOIN ... USING.
На мой взгляд, пользоваться ими неудобно, особенно первой. Но похоже, это именно то, что Вы ищете. | |
|
|
|
|
|
|
|
для: Trianon
(10.11.2006 в 09:34)
| | Trianon ссылка помогла, большое спасибо. | |
|
|
|