Mysql Код ошибки: 1242 Подзапрос возвращает более 1 строки

Казалось, что все работает нормально, и вдруг я получаю эту ошибку на моем внешнем интерфейсе:

Неустранимая ошибка: необработанное исключение ‘PDOException’ с сообщением
‘SQLSTATE [21000]: Нарушение мощности: 1242 Подзапрос возвращает больше
чем 1 строка ‘в /var/www/html/system/home.php:78 трассировке стека: # 0
/var/www/html/system/home.php(78): PDOStatement-> execute () # 1 {main}
добавляется в /var/www/html/system/home.php в строке 78

Под Workbench каждый VIEW, который я создал ранее, выдает эту ошибку: Mysql Error code: 1242 Subquery returns more than 1 row.

Вот пример одного кода, который дает ошибку.

SELECT
`teams`.`id` AS `id`,
`teams`.`name` AS `team_name`,
`teams_and_captains_view`.`captain` AS `captain`,
IF((`teams`.`gender` = 'M'),
'Male',
'Female') AS `gender`,
(SELECT
`categories`.`name`
FROM
`categories`
WHERE
(`categories`.`id` = `teams`.`category_id`)) AS `category`,
`teams`.`category_id` AS `category_id`,
`teams`.`slogan` AS `slogan`,
`teams`.`location` AS `location`,
`teams`.`description` AS `description`,
`teams`.`phone` AS `phone`,
`teams`.`email` AS `email`,
`teams`.`tournament_id` AS `tournament_id`,
(SELECT
COUNT(`players`.`id`)
FROM
`players`
WHERE
(`players`.`team_id` = `teams`.`id`)) AS `players`,
`teams_and_captains_view`.`captain_id` AS `captain_id`
FROM
(`teams`
LEFT JOIN `teams_and_captains_view` ON ((`teams`.`id` = `teams_and_captains_view`.`id`)))

Кажется, работает, когда я использую LIMIT, но я не могу использовать LIMIT.

заранее спасибо

0

Решение

Код ошибки 1242 будет возвращен, когда Ваш подзапрос вернется
более одного ряда для сравнения.

Пожалуйста, проверьте, если вы вставили дубликаты данных по ошибке.

http://dev.mysql.com/doc/refman/5.7/en/subquery-errors.html

2

Другие решения

Других решений пока нет …