How can i have a wildcard in a where clause to where it will show ALL in a certain situation?
I have a dropdown list that contains:
- All – (no value)
- Staff (value = Staff)
- Manager (value = Manager)
- Distributor (value = Distributor)
My SQL select statement originally was:
SELECT * FROM [DB_Table] WHERE ([Site] = @Site) AND (RoleType=@RoleType)
The Role Type equals either Staff, Manager or Distributor and is never blank. This works great to filter by each of the 3 roles, but how can i make it so when ALL is selected, it shows all instead?
I believe i need to do something like this, but can’t get it right:
SELECT * FROM [DB_Table] WHERE ([Site] = @Site) AND (RoleType=@RoleType OR @RoleType <> NULL)
ANSWER:
I couldn’t leave the DDL value for ALL empty, so this is what it looks like and works now.
<asp:ListItem Text="All" Value="All" Selected="True"></asp:ListItem>
<asp:ListItem Text="Staff" Value="Staff"></asp:ListItem>
<asp:ListItem Text="Manager" Value="Manager"></asp:ListItem>
<asp:ListItem Text="Distributor" Value="Distributor"></asp:ListItem>
SELECT * FROM [DB_Table] WHERE ([Site] = @Site) AND (RoleType=@RoleType OR @RoleType = 'ALL')
I think it should be null RoleType for the All drop down choice right?