Pokud jsou dotazy u sebe, jako že v příkladu byly, tak si troufám tvrdit, že se na 90% nepřehlédnu. Zbytek snad odhalí testování. Pokud dovolím sestavit SQL dynamicky, neotestuji pravděpodobně všechny možnosti, které mi od uživatele mohou přijít, což je potenciální díra v aplikaci.
Osobně raději vezmu duplicitu kódu než kód, který do databáze pustí něco neočekávaného.
Netvrdím, že bych kopíroval celý dotaz. Pravděpodobně bych ho rozdělil na několik částí. Zde ale už porušuji čitelnost a trochu i bezpečnost, protože nemohu scannováním zdrojáku otestovat syntaktickou správnost všech dotazů.
Pokud máme v debatě pokračovat dál, rád bych slyšel odpověď na Pavlovu otázku s ohledem na 3 zmíněná kritéria.