选项中有一列包含整数。我只想在该值%2 = 1时选择行。
我知道这可以在2个查询中完成,但是可以在1中完成吗?
答案 0 :(得分:76)
MySQL,SQL Server,PostgreSQL,SQLite支持使用百分号作为模数:
WHERE column % 2 = 1
对于Oracle,您必须使用MOD function:
WHERE MOD(column, 2) = 1
答案 1 :(得分:18)
至少某些版本的SQL(Oracle,Informix,DB2,ISO标准)支持:
WHERE MOD(value, 2) = 1
MySQL支持'%'作为模数运算符:
WHERE value % 2 = 1
答案 2 :(得分:1)
select * from table where value % 2 = 1
在mysql中工作正常。
答案 3 :(得分:1)
注意: 忽略这个答案,因为我一定误解了这个问题。
select *
from Table
where len(ColName) mod 2 = 1
确切的语法取决于您正在使用的SQL的风格。