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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.06.2015, 19:00   #1
Jleksern
Форумчанин
 
Аватар для Jleksern
 
Регистрация: 14.10.2011
Сообщений: 137
По умолчанию Несколько SELECT

Доброго времени суток.

Моя проблема заключается в SQL запросе, в нем несколько SELECT.

Код:
SELECT `char_name`, `pvpkills`, `pkkills`, `online`, `onlinetime`, (SELECT `clan_level` FROM `clan_data` WHERE clan_data.clan_id=characters.clanid) AS clan_level,   (SELECT `level` FROM `character_subclasses` WHERE character_subclasses.char_obj_id=characters.obj_Id) AS `level` FROM `characters` ORDER BY `pkkills` DESC LIMIT 30;
При отправки такого запроса, не происходит ошибок, однако и результата нет.
Стоит отправить точку с запятой, как следующий запрос, появляется сообщение "Query was empty".

Если Я не использую последний SELECT, тогда запрос выводит то что мне нужно.
То есть, такой запрос у меня работает на отлично.
Код:
SELECT `char_name`, `pvpkills`, `pkkills`, `online`, `onlinetime`, (SELECT `clan_level` FROM `clan_data` WHERE clan_data.clan_id=characters.clanid) AS clan_level FROM `characters` ORDER BY `pkkills` DESC LIMIT 30;
Стоит к нему добавить
Код:
(SELECT `level` FROM `character_subclasses` WHERE character_subclasses.char_obj_id=characters.obj_Id) AS `level`
Как мне нет ответа на запрос.

Не могу понять почему, таблицы такие есть, а результата от MySQL нет.
Jleksern вне форума Ответить с цитированием
Старый 30.06.2015, 19:33   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А тот последний случайно множественное не возвращает? Попробуй так, например
Код:
(SELECT MAX(`level`) FROM `character_subclasses` WHERE character_subclasses.char_obj_id=characters.obj_Id) AS `level`
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 30.06.2015, 20:32   #3
Jleksern
Форумчанин
 
Аватар для Jleksern
 
Регистрация: 14.10.2011
Сообщений: 137
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
А тот последний случайно множественное не возвращает? Попробуй так, например
Код:
(SELECT MAX(`level`) FROM `character_subclasses` WHERE character_subclasses.char_obj_id=characters.obj_Id) AS `level`
Отлично.
Сработало на удивление. Спасибо большое, игрался второй день ;-)
Jleksern вне форума Ответить с цитированием
Старый 30.06.2015, 21:38   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Ни чего отличного. Или структура данных не подходящая, или запрос не тот
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
JSP + HQL: как в блоке <select></select> вызвать метод из DAO? Blondy Java для Web (EE, Servlet, JSP, Tomcat, Spring MVC) 4 01.06.2013 15:54
mysql_query("select purse ?????select purse??? wmjaqa PHP 3 24.07.2012 06:45
В зависимости от выбора в Select изменить значения другого Select Tayfun HTML и CSS 3 18.08.2011 00:05
Select t1.N,t1.FIO,(select t2.acc from t2 where t2.type=1) from t1,t2 mavlon_m SQL, базы данных 2 17.09.2009 15:28
Передача значения в <select></select> kkkggg Gamedev - cоздание игр: Unity, OpenGL, DirectX 1 06.09.2007 00:26