Казалось, все работает нормально, то вдруг я получаю эту ошибку на моем переднем конце:Mysql Код ошибки: 1242 Subquery возвращает более 1 ряд
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[21000]: Cardinality violation: 1242 Subquery returns more than 1 row' in /var/www/html/system/home.php:78 Stack trace: #0 /var/www/html/system/home.php(78): PDOStatement->execute() #1 {main} thrown in /var/www/html/system/home.php on line 78
Под Workbench каждый вид я имел созданная ранее, выдает эту ошибку: 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.
Спасибо заранее
ваш 'categories' таблицы, вероятно, содержит повторяющиеся строки с одинаковыми' id'. попробуйте удалить дубликаты и сделать 'id' основным ключом – FuzzyTree
Поскольку вы используете подвыбор для создания псевдо столбца, он возвращает только одно значение - столбец не может иметь более одного значения в одной строке. Если вы «не можете» использовать LIMIT, то, возможно, вы выбрали неправильный подход для начала. (Какой из них лучше подходит, сложно сказать, потому что ваш вопрос не включает в себя структуры таблиц, выборочные данные и ожидаемый результат или даже объяснение того, что вы на самом деле пытаетесь достичь здесь.) – CBroe
Я с FuzzyTree Вот. Запрос выглядит отлично, поэтому он должен описывать несогласованность базы данных. –