Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql IF-in语句_Mysql - Fatal编程技术网

Mysql IF-in语句

Mysql IF-in语句,mysql,Mysql,在我的用户表中,我有一个字段hours,当我选择所有用户时,我还需要得到一个变量fullTime,它将基于ifhours等于7.4。这是我可以在查询中做的事情,而不必遍历所有用户吗?我有600多行,我正试图以最有效的方式完成这项工作,因为每次加载页面时都会发生这种情况。我想从用户那里得到类似于SELECT*,全职as(小时数等于7.4) 编辑:工作SQLSELECT*,如果(每天小时数=7.5,1,0)为用户的全职工作时间,则以下将返回一列,如果小时数=7.4,则为fullTime=1,否则为f

在我的用户表中,我有一个字段
hours
,当我选择所有用户时,我还需要得到一个变量
fullTime
,它将基于if
hours
等于
7.4
。这是我可以在查询中做的事情,而不必遍历所有用户吗?我有600多行,我正试图以最有效的方式完成这项工作,因为每次加载页面时都会发生这种情况。我想从用户那里得到类似于
SELECT*,全职as(小时数等于7.4)


编辑:工作SQL
SELECT*,如果(每天小时数=7.5,1,0)为用户的全职工作时间
,则以下将返回一列,如果小时数=7.4,则为
fullTime
=1,否则为
fullTime
=0

SELECT *, IF(hours = 7.4, 1, 0) AS fulltime FROM users
请注意,如果由于浮点数不准确,小时数为浮点列,则此操作可能失败。

尝试此操作

 SELECT * , if(hours >= 7.4 ,col_time, hours) as fullTime  FROM users
说明:


如果小时数>=7.4(不仅精确地说是小时数=7.4,而且更大),您将得到一个列,其中存储了完整日期和时间或完整时间。您甚至可以按日期格式更改它。否则,您将得到小时数,比如说5个小时,或者其他时间。

可能与您的表列和数据重复?最简单的方法是将
(小时数>=7.4)作为全职
。如果或案例有效,你不需要
任何一个:)谢谢,我会接受的。让我说:P。虽然我可以看到
=
的好处,但这个项目有点奇怪,因为7.5小时以上的人都是人力资源的兼职课程,只有7.4小时是全职的。