1, 简单说明。
select * from tb_name where 1【不为零即可】;则会显示所有记录,select * from tb_name where 0;则不显示任何记录
假设数据库中的一个字段aaa的值有1,2,3。当查询语句为
select * from tb_name where aaa & 1; 则查询结果中会显示出aaa为1和3的所有记录,而不会有aaa为2的记录。
查询过程为:每条记录中的aaa字段和1做位与运算&;结果不为0则显示,为零则不显示。
2, 一个应用
1代表女;2代表男;有个字段为鞋码按性别分类【sex】,分为 男、女 以及 男女通用。查询时若要查出所有的女性鞋码,一个优雅的
方法是:鞋码中的女设置为1,男设为2,男女通用为3。
则查询所有女性鞋码:select * from tb_name where sex & 1;
查询所有男性鞋码:select * from tb_name where sex & 2;