- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我的查询:
select l.id, l.name, l.postcode, l.the_date, d.id as dealer_id, d.name as dealer_name,
(select count(`id`) from `lead_copies` where `id_lead`=l.id) as total_copies,
(select count(`id`) from `assigns` where `id_lead`=l.id) as total_assigns
from `leads` as l
left join `assigns` as a on a.id_lead = l.id
left join `dealers` as d on d.id = a.id_dealer
group by a.id_lead
order by l.the_date desc
assigns
表还有一个 int 字段,其中包含名为 the_date
的 unix 时间戳。
问题是,dealer_name
即将出现在assigns
表中最旧的行中。我想要 assigns
表中最新行的 dealer_name
以及 l.id
的 id_lead
。 p>
我该怎么做?我想不通。如果我将顺序更改为a.the_date
,我会得到不需要的结果,因为我希望这些结果按前置日期而不是分配日期排序。我只希望经销商名称按分配日期排序(如果有意义的话)。
这是我需要什么的更好的想法,但显然这个查询也不起作用:
select l.id, l.name, l.postcode, l.the_date, d.id as dealer_id, d.name as dealer_name,
(select count(`id`) from `lead_copies` where `id_lead`=l.id) as total_copies,
(select count(`id`) from `assigns` where `id_lead`=l.id) as total_assigns,
(select `id_dealer` from `assigns` where `id_lead`=l.id order by `id` desc limit 1) as last_dealer
from `leads` as l
left join `dealers` as d on d.id = last_dealer
order by l.the_date desc
最终编辑:我想要做的就是将以下内容合并到 1 个 SQL 查询中:
$sql = mysql_query("select l.id, l.name, l.postcode, l.the_date,
(select count(`id`) from `lead_copies` where `id_lead`=l.id) as total_copies,
(select count(`id`) from `assigns` where `id_lead`=l.id) as total_assigns
from `leads` as l
order by l.the_date desc");
while ($row = mysql_fetch_assoc($sql))
{
$lead = array();
foreach ($row as $k => $v)
$lead[$k] = htmlspecialchars(stripslashes($v), ENT_QUOTES);
$sql2 = mysql_query("select d.id as dealer_id, d.name as dealer_name
from `assigns` as a
left join `dealers` as d on d.id = a.id_dealer
where a.id_lead = ".$lead['id']."
order by a.the_date desc
limit 1");
while ($row2 = mysql_fetch_assoc($sql2))
{
foreach ($row2 as $k2 => $v2)
$lead[$k2] = htmlspecialchars(stripslashes($v2), ENT_QUOTES);
}
echo '<pre>';
print_r($lead);
echo '</pre>';
}
这可能吗?我确实太笨了,无法弄清楚这一点。
最佳答案
只需对last_dealer进行子查询并进入连接并获取最大the_date而不是id:
select l.id, l.name, l.postcode, l.the_date, d.id as dealer_id, d.name as dealer_name,
(select count(`id`) from `lead_copies` where `id_lead`=l.id) as total_copies,
(select count(`id`) from `assigns` where `id_lead`=l.id) as total_assigns,
d.id as last_dealer
from `leads` as l
left join `dealers` as d
on d.id =
(select `id_dealer`
from `assigns`
where `id_lead`=l.id
order by `the_date` desc
limit 1)
order by l.the_date desc
(但不要使用 order by + limit,使用 max。)
关于mysql - 分组时通过显示最早的连接结果进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27229621/
我正在尝试将数据框中的两列转换为“良好”的日期和时间类,但到目前为止还没有取得太大成功。我尝试过各种类(timeDate、Date、timeSeries、POSIXct、POSIXlt >)但没有成功
我的 Spring Boot 应用程序中有 3 个监听器。只有一名听众应该从头开始阅读主题。如果我添加到 yml 文件中: spring.kafka.consumer.auto-offset-rese
我是 MySQL 新手。谁能告诉我这个问题的答案? 表 Requests,具有以下架构: 领域 |类型 请求编号(PK) |整数 请求日期 |日期 必填日期 |日期 接受日期 |日期 状态 |字符(1
我的 Broker 中有一个名为“test”的主题。我用 CLI 检查过。 我创建了一个 java 生产者来将消息发送到主题 test。我可以从 CLI 中使用它们。 .\kafka-console-
我是一名优秀的程序员,十分优秀!