LEFT JOIN 仅第一行

2023-11-29

我读过很多关于仅获取左连接的第一行的线程,但是,由于某种原因,这对我不起作用。

这是我的结构(当然是简化的)

Feeds

id |  title | content
----------------------
1  | Feed 1 | ...

Artists

artist_id | artist_name
-----------------------
1         | Artist 1
2         | Artist 2

feeds_艺术家

rel_id | artist_id | feed_id
----------------------------
1      |     1     |    1 
2      |     2     |    1 
...

现在我想获取文章并仅加入第一个艺术家,我想到了这样的事情:

SELECT *
    FROM feeds 
    LEFT JOIN feeds_artists ON wp_feeds.id = (
        SELECT feeds_artists.feed_id FROM feeds_artists
        WHERE feeds_artists.feed_id = feeds.id 
    LIMIT 1
    )
WHERE feeds.id = '13815'

只是为了只获取 feeds_artists 的第一行,但这已经行不通了。

我不能使用TOP因为我的数据库,我无法对结果进行分组feeds_artists.artist_id因为我需要按日期对它们进行排序(我通过这种方式对它们进行分组得到了结果,但结果不是最新的)

也尝试了 OUTER APPLY - 也没有成功。 老实说,我无法真正想象这些行中发生了什么 - 这可能是我无法让它工作的最大原因。

解决方案:

SELECT *
FROM feeds f
LEFT JOIN artists a ON a.artist_id = (
    SELECT artist_id
    FROM feeds_artists fa 
    WHERE fa.feed_id = f.id
    LIMIT 1
)
WHERE f.id = '13815'

如果您可以假设艺术家 ID 随着时间的推移而增加,那么MIN(artist_id)将会是最早的。

所以尝试这样的事情:

SELECT *
  FROM feeds f
  LEFT JOIN artists a ON a.artist_id = (
    SELECT
      MIN(fa.artist_id) a_id
    FROM feeds_artists fa 
    WHERE fa.feed_id = f.feed_id
  )
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LEFT JOIN 仅第一行 的相关文章

  • 是否可以使用“WHERE”子句来选择SQL语句中的所有记录?

    晚上好 我很好奇是否可以在 SQL 语句中创建一个 WHERE 子句来显示所有记录 下面一些解释 随机 SQL 语句 Java JSP示例 正常情况 String SqlStatement SELECT FROM table example
  • 如何使用 PHP 从 MySQL 查询中按升序对值进行排序?

    我使用以下 PHP 脚本从 MySQL 表中获取和更改数据 并将结果打印在 HTML 表中 我希望按升序对数据进行排序 utilization percentage变量 它是由创建的 total client time total avai
  • MySQL 中的断言

    我有一个针对大型数据库运行的 SQL 脚本 我想在开始时提出几个简单的查询 作为健全性检查 有没有办法在MySQL中写断言 或者任何类型的 选择 如果它与该值不匹配 则中止整个脚本 一些疯狂的代码 要点是 SET可能会引发 mysql 变量
  • PDO fetch() 失败时会抛出异常吗?

    有没有方法PDO语句 fetch http php net manual en pdostatement fetch php如果 PDO 错误报告系统设置为抛出异常 则在失败时抛出异常 例如 如果我设置 PDO ATTR ERRMODE g
  • 在mysql中搜索“SanF”时获取旧金山的记录

    当我搜索 SanF 时获得 San Francisco 记录 SELECT FROM table WHERE col LIKE san Works SELECT FROM table WHERE col LIKE san F Works S
  • MySQL 触发器和 SUM()

    我有两张桌子 学生桌和家庭桌 在学生中 我有列 st venue 和total venue 家里我有收入 Total Revenue 是学生 st 收入与家庭收入之和 其中 family id student student id stud
  • php 崩溃后 mysql 表被锁定

    我有一个 MySQL DB 和一个 innoDB 表 我有一个 php 页面 用于连接 锁定表 进行一些更新 然后解锁表 PHP 页面通过 wamp 与 apache 一起提供 php页面将文件上传到数据库 我决定通过上传一个大小大于分配给
  • 使用MySQL计算单个表中借方和贷方的余额

    下面的 MySQL 表包含带有关联金额的借方或贷方 操作 如何选择具有非零 余额 的所有 CLIENT ID 我尝试将表连接到自身以计算所有借方和贷方总额 但有些东西无法正常工作 CLIENT ID ACTION TYPE ACTION A
  • Laravel Group By 和 Order By 不起作用

    我尝试制作一个Laravel 5 8项目 项目中的数据是这样的 id purch name prcvalue 1 10234 Nabila 100 2 10234 Nadeera 450 3 10234 Nabila 540 4 10234
  • 我可以在一个查询中更新/选择表吗?

    我需要在查看页面时选择数据并更新 视图 列 有没有一种方法可以在一个查询中执行此操作 或者我是否必须使用不同的查询 如果您不想 不需要使用事务 则可以创建一个存储过程 该过程首先更新视图计数 然后选择值并将其返回给用户
  • #1045 - 用户“root”@“localhost”的访问被拒绝(使用密码:YES)

    这可能看起来多余 但我无法找到正确的解决方案 我无法使用 mysql 控制台登录 mysql 它要求输入密码 但我不知道我实际输入的内容 有办法获取密码或更改密码吗 这就是我的 config inc 的样子 当我尝试打开 phpmyadmi
  • SQL:查找每个跑步者跑步之间的平均天数

    因此 如果我们给出下表 runner ran Carol 2011 02 01 Alice 2011 02 01 Bob 2011 02 01 Carol 2011 02 02 Bob 2011 02 02 Bob 2011 02 03 B
  • 在JavaFX中如何在表视图中添加带有数据的组合框

    我已经尝试了很多 但无法将数据库中的所有值填充到我的组合框表格单元格中 控制器 java public class controller GetConnection gc new GetConnection PreparedStatemen
  • 如何使用 PATCH 更新简单的数据库字段?

    我是 php 和 API 的新手 我正在尝试学习这些方法 但我无法执行 PATCH 或 PUT 来更新我的简单 mysql 数据库 我使用了以下代码 if isset PATCH con mysqli connect localhost r
  • 消除 JPA 标准中子查询产生的冗余连接

    我只需要使用 JPA 标准执行以下 MySQL 查询 获取状态列表 来自state table 基于给定的国家名称 在country SELECT state id state name country id FROM state tabl
  • 将此 MySQL 查询转换为 PyGreSQL

    我正在开发一个 Ruby 应用程序 它使用 mysql 函数 XOR 和 BIT COUNT 不过 我现在需要在运行 PyGreSQL 的 Heroku 上运行该应用程序 我找不到任何可以帮助我的 PyGreSQL 文档 那么任何人都可以翻
  • 创建rest api url以连接mysql数据库

    我想学习如何创建一个rest api url 以便我可以使用该url获取信息并将信息发布到我的mysql数据库中 谷歌搜索了很多并阅读了各种文章 但没有找到任何精确的内容可以学习 所有内容均以 about api 开头 以已创建的其余 ur
  • 有没有办法只安装mysql客户端(Linux)? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有没有不需要安装整个mysql db安装包的Linux mysql命令行工具 我想做的是从服务器 1 应用程序服务器 执行将在服务器 2
  • 如何告诉node.js mysql没有在默认端口上运行?

    我遇到了与此人类似的问题 连接 ECONNREFUSED 节点 js sql https stackoverflow com questions 8825342 connect econnrefused node js sql 我正在尝试将
  • 安装后步骤未成功完成 MySQL Mac OS Sierra

    pyEnv Anants MacBook Pro litibackend anantchandra brew postinstall mysql gt Postinstalling mysql gt usr local Cellar mys

随机推荐

  • Chrome 扩展内容脚本自定义 ui

    我正在编写一个 chrome 扩展 它通过脚本注入在多个网页中显示一些自定义 UI 我注入页面的脚本将一些 Dom 项目附加到文档主体中用户可以与之交互 问题是 项目的样式受到页面 CSS 的影响 我已经通过将 css 应用于插入到 dom
  • 从自定义函数实现几何选项

    我倾向于以极其复杂的方式结束ggplot数字具有很多自定义功能 因此我很自然地将它们作为函数添加到我的代码中 以便我可以轻松地重用它们 当我想使用我的自定义函数之一 但稍微调整它时 就会出现问题 例如删除或添加我已经在函数内定义的几何图形的
  • fiq 和 irq 处理程序 --arm

    我是 ARM 新手 对 IRQ 和 FIQ 有一些疑问 请尝试澄清这些 FIQ和IRQ通道臂有多少个 我们可以为每个通道编写多少个处理程序 此外 如果我们可以为单个中断通道注册多个处理程序 arm 如何知道要运行哪个处理程序 之间的区别IR
  • Unicode Cookie 值

    我即将开始制作一个带有 Unicode 值 日语字符 的 cookie Unicode Cookie 值有问题吗 在 IE 7 IE 8 Firefox Safari Chrome 中 谢谢 从技术上讲 cookie值的内容是不透明的 可以
  • 更改工作表上所有图表中的系列名称

    我试图循环遍历单个工作表上的每个图表并重命名第三个系列 With Sheets Actual Traded Points For Each Chart In ChartObjects Chart SeriesCollection 3 nam
  • 日期时间和文化信息

    我的代码中有这个 var date1 DateTime ParseExact date dd MM yyyy HH mm ss System Globalization CultureInfo InvariantCulture 当我当前的文
  • 使用 JAX-RS 转发来自另一台服务器的响应

    我有一个有角度的客户端 它正在对我的服务器进行 POST 调用 该服务器需要通过 POST 调用调用另一个服务器 server2 来获取响应 并将响应从 server2 传递到客户端 我尝试了以下方法 public Response cal
  • 是否可以释放 UIWebView 的内存?

    我正在尝试释放 UIWebView 对象 但它没有释放内存 这有什么原因吗 也许清除缓存可能有帮助 看NSURLCache class
  • underscore.js: _.zip.apply 示例

    我想看一个例子 zip apply使用下划线 js In the 下划线文档写道 如果您正在使用嵌套数组的矩阵 zip apply 可以以类似的方式转置矩阵 但是 文档没有提供示例 这是你的标准用法apply zip apply null
  • IE7 正则表达式问题 - 适用于所有浏览器的正则表达式不适用于 ie7

    我有一个正则表达式 验证密码值是否为 gt 6 var passwordRegEx d a zA Z 6 25 if quickRegister Password val test pass errorMgs Your password m
  • 如何在jupyter文件浏览器中打开pdf文件?

    我想使用 jupyter 笔记本的文件浏览器打开 pdf 文件 但是 当我单击时 它总是打开一个新选项卡并显示黑屏 我花了几分钟寻找解决方法 并找到了一个 githubissue在 jupyter 项目中 OP 发现通过在 Chrome 中
  • android.view.InflateException:二进制 XML 文件行 #20:膨胀类片段时出错

    我在 stackoverflow 中找到了类似的主题 但对我没有帮助 我正在使用片段显示谷歌地图 在获取另一个片段并返回后它崩溃了 换句话说 谷歌地图只显示一次并崩溃 这是代码 public class MapTabMainFragment
  • ASP.NET MVC Core 3.0 - 为什么来自 body 的 API 请求不断返回 !ModelState.IsValid?

    我目前正在使用ASP NET MVC Core 3 0创建一个 API 项目 我成功发送了一个不带参数的POST请求 但目前我在尝试通过 Postman 发送带有 JSON 参数的 POST 请求时遇到问题 总是收到无效请求 如下所示 请注
  • 具有动态列数的 SQL 视图

    我知道直接不可能 但也许在 sql 函数的帮助下可以创建具有动态列计数的视图 我到底想要做的是 创建视图 其列将是用户名 第一个表的值 日期 第二个表的值 和多列属性 第三个表的每个行将是列 用户表结构 ID 和用户名 日期表结构 ID和日
  • 如何使用 jQuery 和 cookies 删除现有的类名并添加新的类名?

    如何删除类名并用新名称替换它 ul li a href red a li li a href green a li li a href blue a li ul 在这种情况下 当您单击红色或绿色或蓝色时 主体类名称将相应更改 它还会制作一个
  • openpyxl 和 stdev.p 名称错误

    我有一个脚本来格式化一堆数据 然后将其推送到 Excel 中 我可以在其中轻松清理损坏的数据 并进行更多分析 作为其中的一部分 我将大量数据推送到 Excel 并希望 Excel 完成一些跑腿工作 因此我将一定数量的公式放入表格中 其中大多
  • 为什么 DispatcherServlet 创建另一个应用程序上下文?

    我已经使用配置了根应用程序上下文ContextLoaderListener和上下文初始化参数contextConfigLocation 然后 JSF jsf 变量解析器访问根上下文 效果很好 现在的问题是 请求 do 正在通过Dispatc
  • 如何循环目录中的文件并更改路径并向文件名添加后缀

    我需要编写一个脚本 用不同的参数启动我的程序 我开始我的程序 MyProgram exe Data data1 txt Logs data1 Log txt 这是我想做的事情的伪代码 for each filename in Data do
  • 用于测量 Java 代码的经验计算复杂性的工具?

    我有一些 Java 代码 我希望测量它们的经验计算复杂性 有一个趋势教授以编译输入为输入的工具C C 程式 是否有类似于 trend prof 的工具 可以将编译后的 Java 程序作为输入 声纳常用 http www sonarsourc
  • LEFT JOIN 仅第一行

    我读过很多关于仅获取左连接的第一行的线程 但是 由于某种原因 这对我不起作用 这是我的结构 当然是简化的 Feeds id title content 1 Feed 1 Artists artist id artist name 1 Art