Размер столбца в списке полей неоднозначен
Неверный SQL:
SELECT
info_hash,
size,
comment,
created_by,
announce_list,
completed_by,
completed,
seeders,
leechers,
ulspeed,
dlspeed,
dateline,
thumbnail_dateline,
filename,
filesize,
visible,
attachmentid,
counter,
postid,
IF(thumbnail_filesize > 0, 1, 0) AS hasthumbnail,
thumbnail_filesize,
attachmenttype.thumbnail AS build_thumbnail,
attachmenttype.newwindow
FROM attachment
LEFT JOIN attachmenttype AS attachmenttype USING (extension)
WHERE postid IN (-1,2)
ORDER BY attachmentid;
Ошибка MySQL: размер столбца в списке полей неоднозначен. Номер ошибки: 1052
2 ответа
Это означает, что size
предположительно в обоих attachment
а также attachmenttype
,
Если вы укажете названия столбцов, у вас никогда не возникнет такой проблемы.
@GordonLinoff имеет правильный ответ. Но если вы просто скопировали этот код откуда-то, вам будет трудно понять, что он говорит. (Также лучше спросить лучше).
Используйте это как основу. Обратите внимание, как я добавил A.
в size
Если какое-либо поле снова неверно, вам придется добавить либо A.
или же T.
к этому.
SELECT info_hash,
A.size,
comment,
created_by,
announce_list,
completed_by,
completed,
seeders,
leechers,
ulspeed,
dlspeed,
dateline,
thumbnail_dateline,
filename,
filesize,
visible,
attachmentid,
counter,
postid,
IF(thumbnail_filesize > 0, 1, 0) AS hasthumbnail,
thumbnail_filesize,
T.thumbnail AS build_thumbnail,
T.newwindow
FROM attachment A
LEFT JOIN attachmenttype AS T USING (extension)
WHERE A.postid IN (-1,2)
ORDER BY A.attachmentid;