Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Исправте подзапрос плиз / 5 сообщений из 5, страница 1 из 1
05.07.2015, 17:22:46
    #38999954
Areostar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исправте подзапрос плиз
имеется запрос
Код: sql
1.
2.
3.
4.
5.
	$sql ="SELECT `UserID`, `AffiliateID`, `Email`, `Password`, `CreatedDate`,
					`FirstName`, `LastName`, `Phone`, `PhonePrefix`, `Country`, `UserIP`,
                    (SELECT SUM(brandaccounts.actualBalance) FROM `brandaccounts`, `users` WHERE brandaccounts.UserID = users.UserID) As `Balance`,					
    				(SELECT count(*) FROM `brandaccounts` WHERE brandaccounts.UserID = users.UserID) AS `NoAcc`
					FROM `users` WHERE `PartnerID` = ".$_SESSION['PartnerID'];



проблема вот с этим под запросом
Код: sql
1.
(SELECT SUM(brandaccounts.actualBalance) FROM `brandaccounts`, `users` WHERE brandaccounts.UserID = users.UserID) As `Balance`,



он должен вернуть одну цифру - сводный баланс пользователя, а возвращает помоему сводный по всё таблице!!

И к тому же при его появлении искажается результат и второго подзапроса:

Код: sql
1.
(SELECT count(*) FROM `brandaccounts` WHERE brandaccounts.UserID = users.UserID) AS `NoAcc`



что и как исправить???
...
Рейтинг: 0 / 0
05.07.2015, 17:35:14
    #38999956
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исправте подзапрос плиз
Areostarпроблема вот с этим под запросом
Код: sql
1.
(SELECT SUM(brandaccounts.actualBalance) FROM `brandaccounts`, `users` WHERE brandaccounts.UserID = users.UserID) As `Balance`,




он должен вернуть одну цифру - сводный баланс пользователя, а возвращает помоему сводный по всё таблице!!Уберите из FROM таблицу users.
...
Рейтинг: 0 / 0
05.07.2015, 17:49:46
    #38999958
Areostar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исправте подзапрос плиз
Переделал вот так
Код: sql
1.
2.
3.
4.
5.
$sql ="SELECT `UserID`, `AffiliateID`, `Email`, `Password`, `CreatedDate`,
					`FirstName`, `LastName`, `Phone`, `PhonePrefix`, `Country`, `UserIP`,
                    (SELECT SUM(actualBalance) FROM `brandaccounts` WHERE brandaccounts.UserID = users.UserID) As `Balance`					
    				(SELECT count(*) FROM `brandaccounts` WHERE brandaccounts.UserID = users.UserID) AS `NoAcc`
					FROM `users` WHERE `PartnerID` = ".$_SESSION['PartnerID'];



сервер пишет

авторPHP Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(SELECT count(*) FROM `brandaccounts` WHERE brandaccounts.UserID = users.UserID)

что не так?
...
Рейтинг: 0 / 0
05.07.2015, 18:31:10
    #38999973
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исправте подзапрос плиз
Areostarчто не так?запятую забыли после As `Balance`
...
Рейтинг: 0 / 0
06.07.2015, 07:57:55
    #39000158
Areostar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Исправте подзапрос плиз
Cпасибо, по запарке не увидел
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Исправте подзапрос плиз / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]