Php MySQL Select语句---显示所有的位置,除非这个---不太确定如何做

Php MySQL Select语句---显示所有的位置,除非这个---不太确定如何做,php,mysql,Php,Mysql,我正在尝试创建一个SQL查询,它将选择显示的所有内容…但我有一个条件,总小时数=0这是可行的,但我必须再添加一个条件,排除总小时数的条件=0. 我基本上需要查询如下所示:project\u timecard\u task\u days.total\u hours!=0,除非task.type=“固定费率” 因此,声明中的“除非”部分就是问题所在。任何帮助都将不胜感激 SELECT project_timecard_tasks.task_id, project_timecard_

我正在尝试创建一个SQL查询,它将选择显示的所有内容…但我有一个条件,总小时数=0这是可行的,但我必须再添加一个条件,排除总小时数的条件=0.

我基本上需要查询如下所示:project\u timecard\u task\u days.total\u hours!=0,除非task.type=“固定费率”

因此,声明中的“除非”部分就是问题所在。任何帮助都将不胜感激

SELECT project_timecard_tasks.task_id, 
       project_timecard_tasks.datetime, 
       project_timecard_tasks.total_hours, 
       project_timecard_tasks.user_id, 
       project_timecard_tasks.project_id, 
       users.user_id, 
       users.firstname, 
       users.lastname, 
       users.billingrate, 
       tasks.id, 
       tasks.taskname, 
       tasks.billingoption, 
       tasks.fixedrate, 
       tasks.rate_schedule_id, 
       hourlyrates.rate_schedule_id, 
       hourlyrates.hourlyrate, 
       project_timecard_tasks.project_task_id, 
       project_timecard_task_days.project_task_id, 
       project_timecard_task_days.project_task_day_id, 
       project_timecard_task_days.total_hours, 
       project_timecard_task_days.comments, 
       project_timecard_task_days.invoiced 
FROM   project_timecard_tasks 
       JOIN users 
         ON project_timecard_tasks.user_id = users.user_id 
       JOIN tasks 
         ON project_timecard_tasks.task_id = tasks.id 
       JOIN project_timecard_task_days 
         ON project_timecard_tasks.project_task_id = 
            project_timecard_task_days.project_task_id 
       JOIN hourlyrates 
         ON project_timecard_tasks.billing_code_id = hourlyrates.hourly_rate_id 
WHERE  project_timecard_tasks.project_id = '$jobNumber' 
       AND project_timecard_task_days.total_hours != 0 
       AND project_timecard_task_days.invoiced != 1 

只需使用

WHERE
(
  project_timecard_tasks.project_id = '$jobNumber' 
  AND 
  project_timecard_task_days.total_hours != 0 
  AND 
  project_timecard_task_days.invoiced != 1 
)
OR
  task.type ="Fixed Rate"
或者(取决于您希望自己的状况):


只需使用

WHERE
(
  project_timecard_tasks.project_id = '$jobNumber' 
  AND 
  project_timecard_task_days.total_hours != 0 
  AND 
  project_timecard_task_days.invoiced != 1 
)
OR
  task.type ="Fixed Rate"
或者(取决于您希望自己的状况):


使用
语句

...
AND (project_timecard_task_days.total_hours != 0 OR task.type = "Fixed Rate")
AND...

使用
语句

...
AND (project_timecard_task_days.total_hours != 0 OR task.type = "Fixed Rate")
AND...