Will a select filtering on a boolean field be faster than a select filtering on an indexed varchar(255) field?
Specifically: MySQL 5.7
In this case, records of a certain table should never be deleted. Instead they should be marked as inactive if necessary.
A boolean 'is_active' field could be added to that table, or an existing 'status' indexed varchar field could be used (conceptually overloaded) to also store the value 'inactive' if necessary. The varchar is specified as 255 max length, but realistically it is much smaller.
In this case, 90+% of the rows will be considered active, so the boolean is_active would be 0, or alternately the status would have some value other than 'inactive'; and most searches would be for is_active = 1 (ignoring inactive rows).
I have read that there is little value in indexing boolean fields, so whether the boolean option were indexed or not probably wouldn't be a factor (but if it is, please enlighten me!)