public static void Main()
var query1 = @$"SELECT COUNT(*) FROM [dbo].[campaign] WHERE created_at <= GETUTCDATE()"
.WhereCampaignIsActive();
var query2 = @$"SELECT COUNT(*) FROM [dbo].[campaign]"
.WhereCampaignIsActive();
Console.WriteLine(query1);
Console.WriteLine(query2);
public static class QueryStringExtensions
public static string WhereCampaignIsActive(this string query, string prefix = null)
if (query.Contains("WHERE"))
return query + $" AND {prefix}published_status = 2 AND {prefix}end_date >= GETUTCDATE() " +
$"AND {prefix}start_date <= GETUTCDATE() AND {prefix}suspended = 0";
return query + $" WHERE {prefix}published_status = 2 AND {prefix}end_date >= GETUTCDATE() " +
$"AND {prefix}start_date <= GETUTCDATE() AND {prefix}suspended = 0";