Non si e' capito niente.
1) un resultset da 50_000_000 di record non ha concettualmente senso. C'e' qualcosa di marchi in Danimarca.
2) l'ID univoco della tabella Utenti e della tabella Articoli non può essere correlato alla tabella Politiche di Sconto, poiché la chiave primaria è una chiave composta.
"Filosoficamente parlando", NON ESISTE che una scelta progettuale SBAGLIATA non possa essere modificata SE questa da piu' rogne che soluzioni.
Al momento non e' dato sapere che cosa sia "Politiche di Sconto" e di chi sia la chiave primare "composta".
Gia' il fatto di avere una chiave primara "composta" e' MOOOLTO strano.
Non lo si fa QUASI mai.