如何选择不同于复合主键表

2024-01-31

我想了解如何过滤掉select来自具有两个主键的 SQL 表,如下所示:

╔═══════════════════╦════════════════════╦════════════╗
║ First Primary Key ║ Second Primary Key ║ Data       ║
╠═══════════════════╬════════════════════╬════════════╣
║ 1                 ║ 1                  ║ Bla,bla,bla║
║ 1                 ║ 2                  ║ Bla,bla,bla║
║ 1                 ║ 3                  ║ Bla,bla,bla║
║ 1                 ║ 4                  ║ Bla,bla,bla║
║ 2                 ║ 5                  ║ Bla,bla,bla║
║ 2                 ║ 6                  ║ Bla,bla,bla║
║ 2                 ║ 7                  ║ Bla,bla,bla║
║ 3                 ║ 8                  ║ Bla,bla,bla║
║ 4                 ║ 9                  ║ Bla,bla,bla║
║ 4                 ║ 10                 ║ Bla,bla,bla║
║ 4                 ║ 11                 ║ Bla,bla,bla║
║ 4                 ║ 12                 ║ Bla,bla,bla║
╚═══════════════════╩════════════════════╩════════════╝

我想要distinct第一列并只取max(Second_Primary_Key)从第二列开始。

我想要的结果是

╔═══════════════════╦════════════════════╦════════════╗
║ First_Primary_Key ║ Second_Primary_Key ║ Data       ║
╠═══════════════════╬════════════════════╬════════════╣
║ 1                 ║ 4                  ║ Bla,bla,bla║
║ 2                 ║ 7                  ║ Bla,bla,bla║
║ 3                 ║ 8                  ║ Bla,bla,bla║
║ 4                 ║ 12                 ║ Bla,bla,bla║
╚═══════════════════╩════════════════════╩════════════╝

结构应该是这样的:

select * from foo  
where (distinct First_Primary_Key) and max(Second_Primary_Key)

select First_PK, max(Second_PK) from foo group by First_PK

为了获取数据,我更喜欢使用窗口函数:

; with temp as (
 select row_number() over (partition by First_PK order by Second_PK desc)
   as row_num, First_PK, Second_PK, data
 from test)
 select * from temp
 where row_num = 1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何选择不同于复合主键表 的相关文章

  • 打开脚本任务时 SSIS 丢失文件引用

    我们使用自定义审核程序集 C 在脚本任务中记录 SSIS 中的多种操作 我们将在 GAC 中构建自定义程序集 用于运行时 并发布到 IDE VS2008 的公共程序集区域以供设计时文件引用 后构建完成后 自定义程序集可在运行时使用 并可在文
  • 为什么某些字符无法从 CFQUERY 正确注入到 SQL Server?

    我有一个在 Lucee 上运行的 Coldfusion 应用程序 它连接到 SQL Server 数据库 当我直接在 SQL Server 管理器中运行以下查询时 UPDATE article SET content 20m WHERE i
  • Postgresql 中的 id 列位置重要吗?

    我正在测试删除主键列 id 的迁移 我想使用外键作为主键 当我运行并恢复迁移时 我看到表的状态是相同的 只是 id 列现在是最后一个 它会以任何方式改变我的数据库的行为吗 我是否应该费心去恢复迁移恢复代码中的列顺序 理论上一切都应该没问题
  • (SQL) 识别字段中字符串格式多次出现的位置

    我需要将叙述字段 自由文本 拆分为多行 目前的格式如下 Case Reference Narrative XXXX XX 123456 Endless Text up to 50k characters 在作为文本的叙述字段中 各个条目 当
  • MySQL 子查询返回多行

    我正在执行这个查询 SELECT voterfile county Name voterfile precienct PREC ID voterfile precienct Name COUNT SELECT voterfile voter
  • 从存储过程中的动态 SQL 获取结果

    我正在编写一个存储过程 需要在过程中动态构造 SQL 语句以引用传入的表名称 我需要让这个 SQL 语句返回一个结果 然后我可以在整个过程的其余部分中使用该结果 我尝试过使用临时表和所有内容 但我不断收到一条消息 提示我需要声明变量等 例如
  • 如何打印Oracle中过程的定义?

    oracle中有没有办法查看过程的结构是什么 我正在尝试记录并运行程序 并希望将实际的程序结构存储在我的日志中 您可以查询ALL SOURCE table SELECT text FROM all source WHERE owner lt
  • 如何在 SQL Server 中添加具有自动增量值的字符串?

    如何在SQL Server中添加具有自动增量值的字符串 create table date sno int emp identity 1 1 我需要以下作为输出 emp 1 emp 2 用普通定义你的表INT IDENTITY column
  • SQL Server 查询结果集的大小

    SQL Server 中是否有确定结果集中 Mgmt Studio 查询中返回的数据大小 以 MEGS 为单位 您可以打开客户端统计信息 查询菜单 包括客户端统计信息 它给出执行查询时从服务器返回的字节数
  • 是否允许在流水线 PL/SQL 表函数中使用 SELECT?

    管道函数的文档指出 在 SQL 语句 通常是SELECT 并且在大多数示例中 管道函数用于数据生成或转换 接受客户作为参数 但不发出任何 DML 语句 现在 从技术上讲 可以使用 SELECT 而不会出现 Oracle 中的任何错误 ORA
  • SQL - 为每条记录调用存储过程

    我正在寻找一种方法来为 select 语句的每条记录调用存储过程 SELECT SomeIds SELECT spro Id FROM SomeTable as spro INNER JOIN Address addr ON addr Id
  • Postgres、更新和锁定顺序

    我正在研究 Postgres 9 2 有 2 个更新 每个更新都有自己的事务 一个看起来像 UPDATE foo SET a 1 WHERE b IN 1 2 3 4 另一个也类似 UPDATE foo SET a 2 WHERE b IN
  • 在 Postgres 中的数组字段上应用聚合函数?

    是否可以对整数 字段 或其他数字数组 中的所有值应用聚合 如 avg stddev CREATE TABLE widget measurement integer insert into widget measurement values
  • SQL Server 差异工具

    在一个团队中工作时 人们很容易修改开发 SQL Server 表并忘记它 或者准备部署更改但必须等待部署 这使得我们的开发表和活动表不一致 从而在推送存储过程时导致问题 是否有一个工具可以让我输入 SPROC 名称并让它检查开发数据库和实时
  • 更新plpgsql中触发器函数中的多列

    给出以下架构 create table account type a id SERIAL UNIQUE PRIMARY KEY some column VARCHAR create table account type b id SERIA
  • SQL Group BY,每个组的前 N ​​个项目

    我有一个 SQL 查询 可以获取给定商店中销量最高的 5 件商品 SELECT TOP 5 S UPCCode SUM TotalDollarSales FROM Sales S WHERE S StoreId 1 GROUP BY S U
  • sql查询中的truncate和delete命令有什么区别[重复]

    这个问题在这里已经有答案了 可能的重复 SQL中TRUNCATE和DELETE有什么区别 https stackoverflow com questions 139630 whats the difference between trunc
  • 累计非重复计数

    我正在查询每天获取 uid 的累计不同计数 示例 假设有 2 个 uid 100 200 出现在日期 2016 11 01 并且它们也在第二天出现 新的 uid 300 100 200 300 出现在 2016 11 02 此时我希望商店累
  • 案例陈述以确定我是否应该结合

    我目前想做某种条件联合 给出以下示例 SELECT age name FROM users UNION SELECT 25 AS age Betty AS name 假设我只想在 用户 计数 gt 2 时合并第二个语句 否则不合并两者 总之
  • 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

随机推荐

  • Numpy loadtxt 编码

    我正在尝试使用 numpy loadtxt 加载数据 我试图读取的文件使用 cp1252 编码 是否可以使用 numpy 将编码更改为 cp1252 下列 import numpy as np n 10 myfile path to myf
  • 如何使用 CLI 命令更改 GCP 中的项目

    如何将当前正在运行的项目更改为 GCP 中的另一个项目 谷歌云平台 帐户使用命令行界面命令除了使用之外gcloud init手动 gcloud projects list将列出我的帐户上运行的项目 我想使用 cli 命令将当前项目更改为列表
  • 获取变换后旋转物体的宽度和高度

    这个问题是问题的后续 变换后的宽度 高度 https stackoverflow com questions 7565542 width height after transform 我发布一个新问题 因为该问题仅解决宽度而不是高度 公式
  • Google 地图顶部的网格会产生正方形间隙

    我有这个函数可以在谷歌地图上生成一个网格 var map var gribBlockSize 1000 LOCATION MELB var startingLatLng new google maps LatLng 37 686997575
  • Angular Material 日期选择器位置错误(Chrome 除外)

    我正在使用角材料和md datepicker在我的项目中 我有一个表单 包含几个输入和
  • Video.js 下载块而不是整个视频

    我在用着VideoJs https github com videojs video js播放各种视频 有些比其他的大 这是一个简单的场景 开始播放总长度为 100mb 持续时间为 10 分钟的视频 如果用户跳到第 2 分钟 则会调用后端来
  • 具有相互计数的搜索列表(第二次尝试)

    我创建了新的数据集来解释我想要的结果 这是link http console neo4j org r dxwc8z 或者您可以使用 cypher 触发此命令 create 6 UserName dhansukh UserProfileID
  • RichTextBox高级编辑

    我想在我正在使用的 RichTextBox 中使用高级编辑功能 例如 粗体 斜体 下划线 字体颜色 我想知道如何获得一个显示在 RichTextBox 顶部且具有这些功能的工具栏 我想知道是否有任何内置功能提供此功能 或者我是否必须自己创建
  • 添加“auth:api”中间件 Laravel 5.3 后找不到路由

    我正在尝试使用 laravel 5 3 中的新 oauth2 功能从我的一个 laravel 项目到另一个项目进行 api 调用 我的新 Laravel 项目的 api php 路由文件中有这条路由 我想从旧项目中调用它 Route get
  • 以编程方式导航:React Router V4+ Typescript 给出错误

    使用 React Router v4 和 Typescript 以编程方式导航时出错 类型 Readonly 和 Readonly 我想在 API 调用成功或失败时重定向到特定路径 但无法做到这一点 路由器代码 import Browser
  • 如何使用R中的并行处理来分析大型时间序列数据集

    我有一个大型时间序列数据集 使用顺序处理通常需要 4 小时才能处理 1800 个时间序列 我正在寻找一种使用多个核心来减少这个时间的方法 因为我有许多这样的数据集需要定期处理 我用于顺序处理的 R 代码如下 有4个文件包含不同的数据集 每个
  • 如何访问DRF中ListSerializer父类的serializer.data?

    我在尝试访问时遇到错误serializer data在将其返回之前Response serializer data status something 尝试获取字段值时出现 KeyError
  • 无法将 facebook 插件与 Ripple 模拟器一起使用

    我正在尝试使用波纹模拟器运行 facebook 插件 简单示例 我已经包含了 facebook js sdk js 和 cdv plgin js 和 cardova js config xml如下
  • 帮助使用 rgl 包

    我使用选项 disable libpng 安装了 rgl 软件包 我尝试生成 3d 散点图 但它崩溃了 请帮我解决这个问题 这是我正在运行的代码 library rgl open3d x lt sort rnorm 1000 y lt rn
  • 重要术语会导致 CircuitBreakingException

    我有一个中等大小的 Elasticsearch 索引 1 46T 或 1e8 文档 它在 4 台服务器上运行 每台服务器都有 64GB RAM 在弹性和操作系统之间均匀分配 用于缓存 我想尝试新的 重要术语 聚合 所以我触发了以下查询 qu
  • 在 Flask 中扩展蓝图,将其拆分为多个文件

    在烧瓶中 我有一个有点太长的蓝图 我想使用相同的路线将其分成几个文件 games 我尝试延长课程时间 但不起作用 games py from flask import Blueprint bp Blueprint games name ur
  • 访问字典的键/值

    如何访问字典的键 值 我有这个代码 Try If keystrokeDictionary ContainsKey letter Then keystrokeDictionary Keys Equals letter End If Catch
  • 如何改变字段的类型?

    我正在尝试从 mongo shell 中更改字段的类型 我正在做这个 db meta update fields properties default type 1 fields properties default type 2 但这不起
  • 如何检查特定 URL 处是否存在文件?

    如何检查网站上是否存在文件 我在用NSURLConnection和我的NSURLRequest and an NSMutableData对象存储返回的内容didReceiveData 委托方法 在里面connectionDidFinishi
  • 如何选择不同于复合主键表

    我想了解如何过滤掉select来自具有两个主键的 SQL 表 如下所示 First Primary Key Second Primary Key Data 1 1 Bla bla bla 1 2 Bla bla bla 1 3