首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用inner获取不同值?

如何使用inner获取不同值?
EN

Stack Overflow用户
提问于 2017-03-06 18:49:45
回答 2查看 128关注 0票数 0

我有SQL select查询,我正在使用inner,我得到了一些值,但有重复。我想要唯一的值,我正在使用DISTINCT,但它不起作用。

代码语言:javascript
复制
select DISTINCT
  cy_affiliates_clickthroughs_tbl.*,
  cy_affiliates_tbl.email,
  cy_affiliates_tbl.firstname
from
  cy_affiliates_clickthroughs_tbl
  inner join cy_affiliates_tbl on
    cy_affiliates_clickthroughs_tbl.refid = cy_affiliates_tbl.referrer
where
  cy_affiliates_clickthroughs_tbl.refid = '" . $_SESSION['user_id'] . "'
  AND date BETWEEN '$start_date' AND date BETWEEN '$start_date'
  AND '$end_date'
ORDER BY date DESC", OBJECT;

我想要得到电子邮件和名字的不同值。

EN

回答 2

Stack Overflow用户

发布于 2017-03-06 18:58:17

您应该从select中删除cy_affiliates_clickthroughs_tbl.*

如果你只想选择不同的电子邮件和名字,这就是你应该有的。

where子句中可能也有问题,因为date BETWEEN '$start_date' AND date BETWEEN '$start_date' AND '$end_date'是错误的。你可能指的是date BETWEEN '$start_date' AND '$end_date'

票数 0
EN

Stack Overflow用户

发布于 2017-03-06 19:36:00

您可以通过使用GROUP by获取名称和电子邮件的不同值:

代码语言:javascript
复制
select
  cy_affiliates_tbl.email,
  cy_affiliates_tbl.firstname,
  cy_affiliates_clickthroughs_tbl.*
from
  cy_affiliates_clickthroughs_tbl
  inner join cy_affiliates_tbl on
    cy_affiliates_clickthroughs_tbl.refid = cy_affiliates_tbl.referrer
where
  cy_affiliates_clickthroughs_tbl.refid = '" . $_SESSION['user_id'] . "'
  AND date BETWEEN '$start_date'
  AND '$end_date'
GROUP BY cy_affiliates_tbl.email, cy_affiliates_tbl.firstname
ORDER BY date DESC", OBJECT;

请注意,您将错过cy_affiliates_clickthroughs_tbl的一些结果,以确保名称和电子邮件的值是不同的。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42623647

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档