sql >> Databáze >  >> Database Tools >> SSMS

Parametr funguje v SSMS, ale ne v SSRS

Z vašeho dotazu není příliš jasné, na který parametr máte potíže s implementací filtrování „ALL“. Ale z pohledu na vaše dva dotazy to vypadá, že je to @p_ServerName parametr. Ve vašem prvním dotazu se zdá, že u dalších dvou bylo správně provedeno filtrování 'ALL'.

Problém tedy musí být zde:

(c1.SystemName = @p_ServerName OR c1.SystemName = c1.SystemName)

Za prvé, čeho se snažíte dosáhnout druhým dílem? c1.SystemName=c1.SystemName bude vždy true (pokud c1.SystemName není NULL a pokud je to vaším cílem, použijte c1.SystemName IS NOT NULL

Myslím, že by to mělo vypadat spíše takto:

([email protected]_ServerName OR @p_ServerName='all')

Tímto způsobem jste implementovali další dva parametry, takže mi možná něco uniká.

Také si nejsem jistý, co máte na mysli, když říkáte, že řešení dotazů UNIONed musí být takové, jak SSRS dělá věci. SSRS nepřepisuje vaše dotazy na základě parametrů, pouze vkládá tyto hodnoty do těchto proměnných, abyste je mohli použít ve svém dotazu. Pokud je váš parametr @p_ServerName je řetězec, pak je to jen proměnná VARCHAR se znaky "all" v ní.




  1. phpMyAdmin - Chyba Chyba Mysql při spuštění relace

  2. phpmyadmin:jak odstranit časový limit pro import velkých databází

  3. Chyba stránky PHPMyAdmin po změně čísla portu MySQL ve WAMP

  4. jak přidat kompozit jedinečný do sloupce v tabulce mysql