Jangan terpaku pada desain Anda saat ini. Grup berulang Anda sangat berat dan membatasi diri... Apa yang terjadi jika seseorang mengunggah 151 kali? Normalkan tabel ini sehingga Anda memiliki satu dari setiap jenis per baris daripada 150. Anda tidak perlu memetakan dengan cara ini karena Anda dapat memilih SAPDATA dari positioncol tanpa khawatir jika 1-150.
Anda mungkin menginginkan tabel PROJECTS dengan ID, tabel PROJECT_UPLOADS dengan ID dan FK ke tabel PROJECTS. Tabel ini akan memiliki Position, SourceDate, Formula, dan IsActive berdasarkan kasus penggunaan Anda di atas.
Kemudian Anda dapat melakukan hal-hal seperti
pilih p.name, pu.position from PROJECTS p inner join PROJECT_UPLOADS pu pada pu.projectid =p.id WHERE pu.position ='SAPDATA'
dll.