Definitivt inte alternativ 2. Om du inte behöver data, hämta den inte. Enkel. Det skulle vara otroligt ineffektivt att gå med på tabeller (särskilt stora) när du inte behöver data. Du kan välja alternativ 1 eller använda dynamisk SQL för att bygga upp frågan. Jag skulle sedan sätta ihop några testfall och köra exekveringsplanen för att se hur din fråga fungerar.