Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Не существующая ошибка / 7 сообщений из 7, страница 1 из 1
02.08.2015, 16:23:03
    #39021188
Areostar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не существующая ошибка
запрос:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
"SELECT `BrandID`, `BrandName`, `AffiliateID`, `UserName`, `Password`, `MinPayout`,
					        `BrandAPI`, `IsVisible`, `Stars`, `Priority`,  `BrandURL`, `BrandImageUrl`,
							(SELECT COUNT(`AccountID`) FROM `brandaccounts` WHERE `brandaccounts`.`BrandID` = `brands`.`BrandID` ) AS `Leads`,
							(SELECT COUNT(`AccountID`) FROM `deposits` WHERE deposits.paymentMethod != 'Bonus') AS `FTD`, 
						    (SELECT round(SUM(actualBalance),2) FROM `brandaccounts` WHERE brandaccounts.BrandID = brands.BrandID) As `Balance`,	
						    (SELECT round(SUM(requests.Outcome),2) FROM requests, brandaccounts
						   	WHERE brandaccounts.BrandID = brands.BrandID AND brandaccounts.AccountID = requests.AccountID) As `Gain`
						    FROM `brands` WHERE `PlatformID` = :PlatformID && `PartnerID` = :PartnerID"



так работает. Добавляю условие:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
"SELECT `BrandID`, `BrandName`, `AffiliateID`, `UserName`, `Password`, `MinPayout`,
					        `BrandAPI`, `IsVisible`, `Stars`, `Priority`,  `BrandURL`, `BrandImageUrl`,
							(SELECT COUNT(`AccountID`) FROM `brandaccounts` WHERE `brandaccounts`.`BrandID` = `brands`.`BrandID` ) AS `Leads`,
							(SELECT COUNT(`AccountID`) FROM `deposits` WHERE deposits.paymentMethod != 'Bonus' && deposits.AccountID = brandaccounts.AccountID) AS `FTD`, 
						    (SELECT round(SUM(actualBalance),2) FROM `brandaccounts` WHERE brandaccounts.BrandID = brands.BrandID) As `Balance`,	
						    (SELECT round(SUM(requests.Outcome),2) FROM requests, brandaccounts
						   	WHERE brandaccounts.BrandID = brands.BrandID AND brandaccounts.AccountID = requests.AccountID) As `Gain`
						    FROM `brands` WHERE `PlatformID` = :PlatformID && `PartnerID` = :PartnerID"



получаю ощибку:

авторPHP Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42S22]: Column not found: 1054 Unknown column 'brandaccounts.AccountID' in 'where clause'' in /

Но у меня нигде нет 'brandaccounts.AccountID'???

В чём дело??
...
Рейтинг: 0 / 0
02.08.2015, 17:34:23
    #39021217
machetero
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не существующая ошибка
В последнем подзапросе(Gain) есть
...
Рейтинг: 0 / 0
02.08.2015, 19:43:31
    #39021274
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не существующая ошибка
Areostar
Код: sql
1.
(SELECT COUNT(`AccountID`) FROM `deposits` WHERE deposits.paymentMethod != 'Bonus' && deposits.AccountID = brandaccounts.AccountID) AS `FTD`
...
Рейтинг: 0 / 0
03.08.2015, 09:04:54
    #39021416
Areostar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не существующая ошибка
miksoftAreostar
Код: sql
1.
(SELECT COUNT(`AccountID`) FROM `deposits` WHERE deposits.paymentMethod != 'Bonus' && deposits.AccountID = brandaccounts.AccountID) AS `FTD`



переправил вот так
Код: sql
1.
2.
(SELECT COUNT(`deposits`.`AccountID`) FROM `deposits`, `brandaccounts` WHERE deposits.paymentMethod != 'Bonus'
	&& brandaccounts.BrandID = brands.BrandID && deposits.AccountID = brandaccounts.AccountID) AS `FTD`



вроде работает.
...
Рейтинг: 0 / 0
03.08.2015, 09:16:34
    #39021423
Areostar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не существующая ошибка
но как сделать так чтоб если в таблице deposits у какого либо AccountID есть запись которые deposits.paymentMethod != 'Bonus' то в результат добавляется 1 вне зависимости сколько их?
...
Рейтинг: 0 / 0
03.08.2015, 10:50:59
    #39021496
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не существующая ошибка
Areostar, запрос не читал, но вам, похоже, надо что-то вроде
Код: sql
1.
if((select count(...) ...)>0,1,0)

или
Код: sql
1.
if(exists(select count(...) ...)0,1,0)
...
Рейтинг: 0 / 0
03.08.2015, 15:53:49
    #39021860
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не существующая ошибка
tanglirAreostar, запрос не читал, но вам, похоже, надо что-то вроде
Код: sql
1.
if((select count(...) ...)>0,1,0)


Проще тады
Код: sql
1.
SELECT SIGN(COUNT(...)) ...
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Не существующая ошибка / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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