Mysql - Erro privilégios

Pessoal, boa noite.

Preciso de uma ajuda, criei uma tabela chamada “contas” e nela possui 3 colunas “id”, “login” e “senha”, e estou atribuindo privilégios a colunas específicas, só que ao dar um select na coluna da um erro que não possuo permissão.

Atribui as permissões com o código abaixo:

GRANT SELECT (login), UPDATE (senha)
ON programa.contas
TO convidado@localhost;

Tento Visualizar os dados de “login” da tabela contas:
SELECT * FROM contas WHERE login = '123';

Ao dar o SELECT da o erro abaixo:
Error Code: 1142. SELECT command denied to user ‘convidado’@‘localhost’ for table ‘contas’

Alguém sabe o que estou fazendo de errado?

Estás a selecionar todas as colunas. Se só deste grant de select para login e não para senha, vais ter erro.
Assim deverá funcionar

SELECT login FROM contas WHERE login = '123';