php - 通过使用分组条件使结果独一无二
问题描述
在这里,我想加入两个表并想产生像这样的输出
Akbar Travels building 2018-10
Thrikandiyur Quarters 2018-10
Akbar Travels building 2018-11
Thrikandiyur Quarters 2018-11
这里我有两个表名table A,table B
,table A
结构看起来像这样
category_id category_name
5 Akbar Travels building
6 Thrikandiyur Quarters
table B
结构看起来像这样
id paying_date paying_month parent_category
1 2018-10-01 2018-10 5
2 2018-10-01 2018-10 5
3 2018-10-01 2018-11 5
4 2018-11-01 2018-11 5
5 2018-10-01 2018-10 6
6 2018-10-10 2018-12 5
在这里为了获得输出,我写了这样的代码
public function get_date_wise_pdf_report($from, $to)
{
$query=$this->db->query("SELECT distinct A.category_name,B.paying_month from tableA A left join tableB B on A.category_id = B.parent_category and B.paying_date BETWEEN '{$from}' AND '{$to}' order by B.paying_month");
return $query->result();
}
但是当我使用它时,我会变成这样
Akbar Travels building 2018-10
Thrikandiyur Quarters 2018-10
Akbar Travels building 2018-10
Thrikandiyur Quarters 2018-10
我无法在这里按语句分组,如果我只给了两行就会出来,请帮我解决
解决方案
尝试使用子查询
select distinct catname,paymon
from
(SELECT A.catname,DATE_FORMAT(B.paydate, "%Y-%m") as paymon from A
left join B on A.catid = B.parentcatid and B.paydate BETWEEN '2018-10-01' AND '2018-12-31'
)X order by paymon
推荐阅读
- c# - 设置ONVIF Dot11Configuration加入Wi-Fi网络的正确方法是什么
- jenkins - 无法在 Jenkins 配置中添加 SSH 服务器
- c - C2x:6.9.2 外部对象定义:为什么“不应是不完整的类型”放在语义而不是约束中?
- c - 如何修复警告“格式指定类型'void *'但参数具有类型'char'警告”
- android - 您上传的文件不是格式正确的 zip 存档
- shell - 如果我在脚本中导入,则无法使用 echo 命令
- excel - 如果单元格 = 0 或为空,则转到上一个单元格值
- python - 使用浏览器控制台绕过 hcaptcha
- python - 如何访问for循环中的下一个值
- tapkey - 是否可以通过 POST 请求撤销 tapkey 授权?