Consulta SQL retornando “Operando deve conter 1 coluna (s)”

Atualmente estou trabalhando em uma consulta que terá todas as linhas de uma tabela, mas apenas informações limitadas da outra.

Eu tentei trabalhar com esta consulta:

SELECT `t`.`uid`, `t`.`cid`, `t`.`id` FROM `tracking` as `t`
JOIN (SELECT DISTINCT(`p`.`id`, `p`.`firstname`, `p`.`lastname`, `p`.`company`) FROM `publishers` as `p`) as `p`
ON `p`.id = `t`.uid

No entanto, recebo o erro como no título do tópico.

Alguém pode ver o que estou fazendo errado aqui?

Editar:

Estrutura no rastreamento: id int (11) ai primário, cid int (11), uid int (11).

Estrutura nos editores: id int (11) primário ai, primeiro nome varcher (60), lastname varchar (60), empresa varchar (100).

Amostra: editora id 1, nome NIKOLAJ, sobrenome JEPSEN, empresa APECHO id 6, nome ROBERT, sobrenome SCOTT, empresa FLAPJACK LTD

id de rastreamento 1, cid 1, uid 1; id 2, cid 1, uid 6; id 3, cid 3, uid 1

questionAnswers(2)

yourAnswerToTheQuestion