Il problema è la tua sottoquery con select count(1)
parte. Solo perché contiene un conteggio, in realtà non lo rende un aggregato. È ancora una sottoquery che verrà applicata a ogni riga e come puoi vedere usa il valore c0.tdata.tariff
che non fa parte del gruppo.