问题标签 [compound-key]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
85 浏览

python - 带有复合键的 Numpy 数组;在两者中找到子集

我有两个 2D numpy 数组形状:

在每种情况下,前 3 个字段形成一个标识符。

我想减少较大的矩阵,使其仅包含带有标识符的行,这些标识符也存在于第二个矩阵中。所以形状应该是(248L,12L)。我怎样才能做到这一点?

然后我想对其进行排序,以便数组由第一个值、第二个值和第三个值索引,以便 (3 3 4) 出现在 (3 3 5) 等之后。是否有多字段排序功能?

编辑:

我试过熊猫:

但这会导致 (0,13) 形状

0 投票
3 回答
766 浏览

mysql - 复合色谱柱上的独特之处

我试图确保RESTAURANTIDTABLENUMBER中的值一起使用。我尝试创建一个在我的文件中导致以下内容的文件:UniquePowerDesigner (12.5)alternate key.sql

但是,有了这个,我仍然可以多次输入相同RESTAURANTID的值。TABLENUMBER

我用这个http://www.tek-tips.com/viewthread.cfm?qid=403554创建了alternate keyin PowerDesigner.

有人知道实现这一目标的正确方法PowerDesigner吗?

注意:这不是上面发布的问题的重复,因为我正在寻找一种方法来实现这一点,PowerDesigner而无需sql随后编辑生成的文件。

0 投票
2 回答
21062 浏览

r - 如何使用多列作为键合并两个数据框?

假设我有以下数据框:

A*注意:变量和Bin的每个唯一组合都DF2应该有一个唯一的VAL.

对于每一行,如果列中的值与匹配以及列中的值与该行匹配,我想将 in 替换为NAinTEST的相应值。否则,我会离开. 如果不使用 match 遍历每个组合,我将如何做到这一点?VALDF1AABBTESTNA

理想情况下,答案将扩展到两个数据框,其中包含许多要匹配的列。

0 投票
2 回答
257 浏览

sql - 复合键的一部分作为外键避免冗余

你好我有一个这样的数据库数据库表
如您所见,这是一个酒店数据库,其中包含有关预订、客户和房间的所有信息。问题在于 bookings 和 BookDates 表。每个进行预订的客户都可以预订几个日期,而且这些日期不必按任何顺序排列。这就是为什么我必须创建 BookDates 以避免这种情况在此处输入图像描述 但现在我遇到了如何关联这两个表的问题,因为我不能只将复合键的部分与另一个表相关联。这就是 BookDates 表现在的样子。没有主键。在此处输入图像描述

0 投票
3 回答
354 浏览

mysql - MySQL UNIQUE KEY 设计:复合 INT + VARCHAR 键与单列 VARCHAR 键

我正在考虑 MySQL 5.6 InnoDB 表的以下模式。我无法决定使用哪些键:

我可以要求列text是唯一的(选项 1),或者我可以允许一些重复的条目,而是在+text 上放置一个复合唯一键(选项 2)。从存储的角度来看,选项 1 显然更有效,但查询速度对我们来说是更重要的问题。doc_idtext

鉴于它text很长,因此导致唯一键效率低下,我怀疑使用复合键可能会导致更快的查询(注意doc_id是整数,因此相对非常有效)。但是,我对 MySQL 内部结构不够熟悉,无法理解复合键是否以这种方式工作。

如果读取速度是我们最关心的问题,那么哪些选项是最佳实践?保留两把钥匙有什么害处或好处吗?

笔记:

  • 查询此表的唯一函数始终可以访问doc_idand的值text(此函数的唯一目的是查找text_id)。
  • 该表目前没有数据,但我们预计它最终将包含大约 10 亿行。
  • 每个doc_id列的其他行中最多有 99 个重复项doc_id
  • 列中可能有数百万个单元格,text其中前 20 多个字符相同(所有文本片段都很短且属于相同的一般主题)。
  • 目标是对text列进行重复数据删除。对于此特定应用程序,这样做有望节省大量空间。
0 投票
2 回答
342 浏览

mysql - 删除具有重复主复合键的行

我有一个由以下整数列组成的表:

理想情况下,主键是(group_id, person_id),但我需要先删除一些重复项。每当有重复时,我只想保留最低的序列值。

我想出了一个查询来选择一些错误的行,但它只获得重复集中的最高序列号。

我确定我错过了一些简单的东西。有没有一种简单的方法可以删除这些重复项?

谢谢。

0 投票
1 回答
176 浏览

cassandra - 为什么在 Cassandra 表中使用复合聚簇键?

为什么要在 cassandra 表中使用聚集索引?

例如; 在这样的表中:

聚集的部分a, b, cPRIMARY KEY.

有什么好处?有哪些考虑?

0 投票
3 回答
215 浏览

clojure - 复合键作为clojure中的查找函数

在 clojure 中,您可以同时使用映射和键作为查找函数,因此 ({:a 1 :b 2} :a)它们(:a {:a 1 :b 2})都是可行的查找函数。

那么为什么你可以使用地图作为复合键的查找函数,而不是相反呢?

这意味着({[:compound :mebaby] 1} [:compound :mebaby]})将返回1,但([:compound :mebaby] {[:compound :mebaby] 1})会抛出错误。

0 投票
0 回答
556 浏览

mysql - MySQL:根据条件插入和自动递增

我正在使用 InnoDB。我的表结构如下:

如您所见,我使用复合主键,键的一部分是自动递增列。现在,如果另一个表上存在条件,我想阻止自动增量并将现有 ID 用于密钥对 ID-ID_Lang。例如,如果我有记录 ID:1 ID_Lang:1 Name:Cat ID:2 ID_Lang:1 Name:Dog 并且我想为 Cat 添加法语翻译,则新记录将是 ID:1 ID_Lang:2 Name:Chat
现在我需要插入多条记录,有些将获得自动 ID,其他将使用现有的,具体取决于另一个表上是否存在值。是否可以在单个 INSERT ... SELECT 语句中执行此操作,还是必须使用游标?

0 投票
2 回答
5893 浏览

python - 在 SQLAlchemy 中,如何查询复合主键?

我正在使用 SQLAlchemy 以编程方式查询具有复合外键的表。例如:

我想获取一个值列表并取回行,例如:

如果每一列都是独立的,我可以做

但这显然不能只带来唯一匹配的 (id, date) 元组。我怀疑有一种方法可以指定要查询的复合主键,但搜索后我找不到任何文档。