|
|
|
Как сделать запрос с двух таблиц, если...
|
|||
|---|---|---|---|
|
#18+
Привет. Как сделать запрос из двух таблиц, если в одной есть данные, а в другой нет, а надо видеть все данный, причём таким образом: Код: plaintext 1. 2. 3. 4. 5. 6. 7. Надо получить такой запрос: Код: plaintext 1. 2. Как это сделать? Сорри за ламерскй вопрос :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 13:53 |
|
||
|
Как сделать запрос с двух таблиц, если...
|
|||
|---|---|---|---|
|
#18+
SELECT table1.*, table2.* FROM table1 LEFT JOIN table2 ON table1.date = table2.date; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 14:03 |
|
||
|
Как сделать запрос с двух таблиц, если...
|
|||
|---|---|---|---|
|
#18+
sasha_1 Спасибо. Это уже кое-что! Но а если таблицы будут названы наоборот, то запрос выдаст пустую строку... Full Outer Join Access не поддерживает, вроде как... Тогда как всё-таки сделать запрос, чтобы в любом случае можно было бы получить результат моего первого сообщения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 14:28 |
|
||
|
Как сделать запрос с двух таблиц, если...
|
|||
|---|---|---|---|
|
#18+
Union из Left Join и Right Join ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 14:35 |
|
||
|
Как сделать запрос с двух таблиц, если...
|
|||
|---|---|---|---|
|
#18+
или если более подробно, то посмотри здесь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 14:45 |
|
||
|
Как сделать запрос с двух таблиц, если...
|
|||
|---|---|---|---|
|
#18+
Лох Позорный А если у меня 10 таблиц, чтобы быть уверенным в правильности результата, мне придётся 11 запросов делать тогда - 10 запросов и одно объединение? А если у меня 100 таблиц? Хех... К тому же твой вариант покажет мне 2 строчки за 11.07.2003... Как избавится от повтора результата? И неужели нет более приемлимого результата? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 14:50 |
|
||
|
Как сделать запрос с двух таблиц, если...
|
|||
|---|---|---|---|
|
#18+
>Как избавится от повтора результата? union не выводит повторов >И неужели нет более приемлимого результата? я же дал ссылочку. вряд ли с тех пор кто-то что-то новое придумал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 14:59 |
|
||
|
Как сделать запрос с двух таблиц, если...
|
|||
|---|---|---|---|
|
#18+
Если тебе нужно Full Outer Join из 100 таблиц - надо что-то в консерватории менять. Про повторы Саша уже сказал В один запрос (Union) можно запихать все что угодно. Так что 10 запросов и одно объединение - на фиг. Не делай проблему из ничего ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 15:06 |
|
||
|
Как сделать запрос с двух таблиц, если...
|
|||
|---|---|---|---|
|
#18+
sasha_1 Union даёт повтор, если использовать в нём слово ALL . Ну это вроде разрулили, спасибо. Лох Позорный Код: plaintext Люблю умных людей - иногда не знаешь, о чём они говорят :) Проблемы я не делал, просто спросил... Вы ответили - молодцы, большое спасибо! Код: plaintext И ты представляешь себе этот запрос? Потом в нём сам Чёрт не разберётся... ИМХО, лучше писать маленькие запросы с последующим объединением. Или я определённо не прав? :) В обшем, спасибо большое! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 15:24 |
|
||
|
Как сделать запрос с двух таблиц, если...
|
|||
|---|---|---|---|
|
#18+
Или я определённо не прав? :) А это уж как ты захочешь (или не захочешь) Надо тебе один запрос (без 10 маленьких и одного объединения) - делай один запрос Надо тебе кучу маленьких и один объединений (типа для читабельности) - так и делай Колхоз - дело добровольное. Кто не хочет - выходи лицом к стене. В общем большое пожалуйста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 15:31 |
|
||
|
Как сделать запрос с двух таблиц, если...
|
|||
|---|---|---|---|
|
#18+
Помнится, еще было такое предложение: Выбрать (Union-ом или во временной табле) все существующие даты и к этим датам заджойнивать все остальные таблы. Без потерь, простенько и со вкусом... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 15:34 |
|
||
|
Как сделать запрос с двух таблиц, если...
|
|||
|---|---|---|---|
|
#18+
Не факт что без потерь Join с Union'ом и Union из Join'ов - две большие разницы. Надо в каждом случае смотреть что быстрее окажется При джойнах таблиц - работают связи, зато при Union'е выполняется группировка по всем столбцам. Я обычно делаю Left Join + Right Join с условием на Null(только недостающие записи) + все это в Union All. Так (обычно) получается быстрее. И связи/индексы используются, и группировка при Union All не делается. Если результирующий набор небольшой (по сравнению с общим кол-вом записей) - тогда Join с Union'ом. Иначе Union из Join'ов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2003, 15:49 |
|
||
|
|

start [/forum/topic.php?fid=45&gotonew=1&tid=1680128]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
98ms |
get topic data: |
10ms |
get first new msg: |
7ms |
get forum data: |
3ms |
get page messages: |
69ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 421ms |

| 0 / 0 |
