使用左连接

时间:2018-02-01 09:32:35

标签: php sql

我有两个子查询,我正在进行连接,第一个返回以下数据:

array (size=110)
  0 => 
    array (size=3)
      'scans' => string '7' (length=1)
      'bonus_points' => string '0' (length=1)
      'date' => string '2017-06-13' (length=10)
  1 => 
    array (size=3)
      'scans' => string '20' (length=2)
      'bonus_points' => string '0' (length=1)
      'date' => string '2017-06-14' (length=10)
第二个:

array (size=21)
  0 => 
    array (size=2)
      'redeems' => string '1' (length=1)
      'date' => string '2017-06-14' (length=10)

如果我对这两个人进行左联接,那么:

LEFT JOIN query2 ON query2.date=query1.date;

我得到以下内容:

array (size=110)
  0 => 
    array (size=4)
      'scans' => string '7' (length=1)
      'bonus_points' => string '0' (length=1)
      'date' => null
      'redeems' => null
  1 => 
    array (size=4)
      'scans' => string '20' (length=2)
      'bonus_points' => string '0' (length=1)
      'date' => string '2017-06-14' (length=10)
      'redeems' => string '1' (length=1)

除了左查询并不总是与正确的查询具有相同的日期,然后结果为'date' => null之外,其他所有内容都是我想要的。

如何保留两个查询的数据?

1 个答案:

答案 0 :(得分:1)

从左表中选择date列,而不是从右侧(已加入)列中选择。