Primeiro, no mysql você não precisa declarar uma variável, neste caso. Basta usar a palavra-chave 'SET'. E, finalmente, você precisa colocar um alias para sua consulta 'select'. Assim:
SET @json = '[ { "name":"John Smith", "address":"780 Mission St, San Francisco, CA 94103"}, { "name":"Sally Brown", "address":"75 37th Ave S, St Cloud, MN 94103"}, { "name":"John Johnson", "address":"1262 Roosevelt Trail, Raymond, ME 04071"} ]';
##SELECT @json;
SELECT * FROM JSON_TABLE (@json, '$[*]' COLUMNS (
`name` VARCHAR(40) PATH '$.name',
`address` VARCHAR(100) PATH '$.address')) AS T;