哪里列= x或跳过?

时间:2018-10-01 11:45:04

标签: mysql sql select

我有一个查询:

SELECT `doc_assign`.`id` as doc_assign_id, 
       `user_profiles`.`data` as report_fixed_template_discount, 
       `doc_assign`.`type` as document_type
FROM (`doc_assign`) 
JOIN `jobs` ON `jobs`.`id` = `job_assign`.`job_id`
JOIN `docs` ON `docs`.`id` = `doc_assign`.`doc_id`
LEFT JOIN `user_profiles` ON `user_profiles`.`user_id` = `jobs`.`client_id`
WHERE `jobs`.`status` =  3
AND `jobs`.`completed_on` >= '2018-09-01 00:00:00'
AND `jobs`.`completed_on` <= '2018-09-30 23:59:59' 
AND `user_profiles`.`meta` =  'report_fixed_template_discount'

问题在于,尽管user_profiles表将始终具有数据,但我们不一定具有带有meta = 'report_fixed_template_discount'的行-由于该查询将不会返回没有meta = 'report_fixed_template_discount'的行。

所以,问题是我如何才能看到可能有meta = 'report_fixed_template_discount'的结果。

1 个答案:

答案 0 :(得分:3)

您可以将use Illuminate\Contracts\Support\Htmlable; class CustomHtmlable implements Htmlable { public function toHtml() { return '<p>This is a value</p>'; } } // Create a new instance. $instance = new CustomHtmlable; // The value will still contain the HTML tags. $returnValue = e($instance); 上的条件移到左联接:

meta