|
Помогите создать запрос
|
|||
---|---|---|---|
#18+
Допустим есть 2 таблицы: Таблица "Клиенты" с полями "ID" и "Имя" и таблица "Заказы" с полями "ID" и "Заказ". Поля "ID" в таблицах связаны. У одного клиента может быть много заказов, а может быть что у клиента нет ни одного заказа. Нужно сделать запрос который бы вывел всех клиентов, независимо есть ли у него заказы или нет, и количество его заказов. Помогите пожалуйста, замаялся уже. Всё время результат ограничивается только теми у кого есть заказы. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2004, 06:51 |
|
Помогите создать запрос
|
|||
---|---|---|---|
#18+
left join пользуй а не inner! И вообще забей Constraint'ы ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2004, 09:17 |
|
Помогите создать запрос
|
|||
---|---|---|---|
#18+
Код: plaintext 1.
Для тех клиентов у которых нет заказов все поля таблицы b будут иметь значение NULL. Соответственно COUNT(*) выдаст результат 1 для тех у кого заказов нет! Для решения используй SUM и IF или ISNULL и т.д. mahoune ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2004, 15:44 |
|
Помогите создать запрос
|
|||
---|---|---|---|
#18+
Спасибо за ответ. У меня есть продолжение этого вопроса. Допустим есть ещё 3я таблица, аналогичная второй, но с другим содержимым. Нужно сформировать большую таблицу со всеми клиентами, количеством их заказов и количеством связанных элементов из 3й таблице. Можно это сделать без промежуточного запроса? Если да то как? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.01.2004, 06:28 |
|
|
start [/forum/search_topic.php?author=Snik&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 2304ms |
total: | 2451ms |
0 / 0 |