Utilizzare le gamme di identificazione per distinguere i clienti dai fornitori è una cattiva idea. Non farlo.
Il problema è nel dominio della contabilità / contabilità. Lo standard in quel dominio è di avere due raccoglitori, uno per le fatture dai fornitori e uno per le fatture per i clienti. Questa è una ragione per avere due tabelle.
Un altro motivo per avere due tabelle è che nella tabella degli ordini ci sarà un campo con l'importo dell'ordine / fattura. Sarà negativo per gli ordini dei fornitori? Allora cosa succede se hai bisogno di accreditare un cliente per una parte del loro ordine? O sei accreditato come parte di un ordine fornitore?
Due tabelle separate non diventano complesse, nel peggiore dei casi una duplicazione della logica. Ma fai attenzione e vedi come riutilizzare il codice tra le due tabelle, poiché ci sono delle somiglianze che possono trarre vantaggio dal riutilizzo del codice, ma man mano che procedi troverai più differenze che sono più facili da gestire con due tabelle.
Con una sola tabella ogni differenza può portare a molti if o switch.
Due tabelle non dovrebbero essere più lente in alcun modo, ma una tabella potrebbe portare a query più complesse che potrebbero essere più lente.