Vediamo se ho capito bene.
In questa tabella, in merito ad un ordine univoco, hai gli stessi campi relativi a codice ordine, codice cliente e data, mentre, invece, ovviamente hai diversi codice prodotto, giusto?
Basta fare una query con DISTINCT per codice ordine.
Ad ogni modo io strutturerei tutto su quattro tabelle:
codice:
TabellaClienti
idCliente - contatore
...
TabellaProdotti
idProdotto - contatore
...
TabellaOrdini - contatore
idOrdine - contatore
codiceOrdine - testo (stringa alfanumerica contenente il codice ordine creato con un eventuale algoritmo esterno).
idCliente - numerico
dataOrdine - data
...
TabellaProdottiOrdinati
idOrdine - numerico
idProdotto - numerico
quantitaProdotto - numerico
...
In questo modo quando inserisci un ordine nella "TabellaOrdini" inserisci l'ID del cliente e la data dell'ordine.
Poi, nella "TabellaProdottiOrdinati" inserisci tanti record con lo stesso ID ordine per quanti prodotti sono stati ordinati.
Le relazioni sono date dagli stessi campi (con stesso nome) presenti tra le varie tabelle.
Per sapere quanti ordini ha effettuato il cliente X in una deternimata data basta fare una query sulla "TabellaOrdini" passandole i prametri idCliente (preso dalla "TabellaClienti" e dataOrdine.
Dal risultato della query ottieni l'elenco degli ordini (tra cui il campo idOrdine.
Per conoscere il dettaglio di un ordine basta interrogare la "TabellaProdottiOrdinati" passandole il valore idOrdine.