有没有一种方法可以通过一个条件获取记录


Is there a way to get records by one condition

有没有办法只通过一个条件而不是这三个条件来获取记录:-

select * from product
where price != '' and price != 0 and price is not null

价格列的DDL是price varchar(15) default null

空字符串的计算结果为false,0的计算结果是false,NULL的计算结果也是false,所以这应该有效:

SELECT * FROM product WHERE price;

如果你担心条件的长度,你可以试试这个:

select * from product
where price > ''

甚至可能更好的

select * from product
where price

如果您将price设置为数字类型,并且默认值为NOT NULL,则只需检查即可!=0.