Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.05.2013, 12:05   #1
Ardarik
Пользователь
 
Регистрация: 16.01.2011
Сообщений: 80
По умолчанию Выборка из нескольких таблиц

База MySQL, есть таблица get, name, type. В таблице get храниться что нужно получить со склада если status = 0, а если 1 то получено. Мне нужно вывести что нужно получить.
Код:
SELECT id_name, number FROM get WHERE status=0
Но надо чтоб выводил не id_name а name из таблице name
Код:
SELECT name, number 
FROM get
WHERE status=0
LEFT OUTER JOIN   name ON name.id_name = get.id_name
Но на этот запрос пишет чтоб проверил документацию на использование LEFT OUTER JOIN name ON name.id_name = get.id_name
Ardarik вне форума Ответить с цитированием
Старый 24.05.2013, 12:10   #2
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

Цитата:
пишет чтоб проверил документацию на использование LEFT OUTER JOIN
ну так и чего ждете?
eval вне форума Ответить с цитированием
Старый 24.05.2013, 12:13   #3
Ardarik
Пользователь
 
Регистрация: 16.01.2011
Сообщений: 80
По умолчанию

Да вот читаю про JOIN пока не понял что не так
Ardarik вне форума Ответить с цитированием
Старый 24.05.2013, 12:21   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Плохо читаете. Какого лешего LEFT JOIN стоит после WHERE?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 24.05.2013, 12:28   #5
Ardarik
Пользователь
 
Регистрация: 16.01.2011
Сообщений: 80
По умолчанию

Точно, спасибо.
Код:
SELECT name.name, number
FROM get
LEFT JOIN   name ON name.id_name = get.id_name
WHERE status = 0
Запрос
Код:
SELECT type.`name_type`, name.`name`, COALESCE((SELECT SUM(get.number) FROM get WHERE name.`id_name` = get.`id_name` and  get.status = 0),0) as nado
FROM  name
LEFT OUTER JOIN   sklad.type ON name.`type` = type.`id_type`
Нужно чтоб выводил если nado больше нуля
Код:
WHERE nado >0
говорит что не известный столбец nado.

Последний раз редактировалось Stilet; 24.05.2013 в 13:53.
Ardarik вне форума Ответить с цитированием
Старый 24.05.2013, 13:51   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Цитата:
Сообщение от Ardarik Посмотреть сообщение
говорит что не известный столбец nado.
А че неправду говорит? Его нет, а есть такой псевдоним, во WHERE не прокатит
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 24.05.2013, 13:57   #7
Ardarik
Пользователь
 
Регистрация: 16.01.2011
Сообщений: 80
По умолчанию

Да не думаю что врать будет. Только вот в какой то книжке мне попадалось что как то можно псевдоним использовать. Как же мне выводить только что больше нуля?
Ardarik вне форума Ответить с цитированием
Старый 24.05.2013, 14:10   #8
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

читайте про group by
Цитата:
SUM(get.number)
И что тут в результате имеем, ежа с ужом сложили?
eval вне форума Ответить с цитированием
Старый 24.05.2013, 14:16   #9
Ardarik
Пользователь
 
Регистрация: 16.01.2011
Сообщений: 80
По умолчанию

Ну мне этот запрос нужен для отчета. Количество сколько надо получить со склада
Ardarik вне форума Ответить с цитированием
Старый 24.05.2013, 14:25   #10
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

SUM это сумма, что видно из названия, и никак не кол-во.
eval вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запрос. Выборка из нескольких таблиц Ol'ga БД в Delphi 2 16.05.2012 22:54
Выборка из нескольких таблиц в списки Di_sol Microsoft Office Access 7 13.01.2012 19:48
Выборка из таблиц Kingdom_Reborn Помощь студентам 1 22.11.2010 13:05
Выборка данных из нескольких таблиц Alxxxx74 Microsoft Office Excel 1 22.07.2010 08:58
выборка данных из нескольких таблиц AlexxxM Microsoft Office Access 0 27.05.2010 12:08