Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
访问SQL匹配到唯一值_Sql_Ms Access_Match_Relationship - Fatal编程技术网

访问SQL匹配到唯一值

访问SQL匹配到唯一值,sql,ms-access,match,relationship,Sql,Ms Access,Match,Relationship,我有两组来自两个不同来源的不同数据,我正试图将它们组合起来创建一个存储在“SD”表中的“选择列表”。数据的简单摘录如下所示 两者之间的共同关系是SKUSKU为我们提供了所需的提货数量,可以不止一个

我有两组来自两个不同来源的不同数据,我正试图将它们组合起来创建一个存储在“SD”表中的“选择列表”。数据的简单摘录如下所示

两者之间的共同关系是
SKU
<
SD
表中的code>SKU为我们提供了所需的提货数量,可以不止一个<表
Stock'
中的code>SKU可以有多个相同的
SKU
,但每个都有自己唯一的标签ID

SD表:

SKU     Shoot Date
4PYCD   14/06/2015
4PYCE   14/06/2015
4PYCF   14/06/2015
4PYCF   14/06/2015
库存表:

SKU ID
4PYCD   Z1234
4PYCD   Z2345
4PYCE   H8767
4PYCF   H7890
4PYCF   Z3456
4PYCF   I8976
4PYCF   P0989
4PYCF   Z1236
例如,我们在拍摄时需要2个
SKU
,5个可用“库存”。我需要一个查询,将
库存
表中的前2个匹配标签ID作为与
拣选列表
表中请求的
SKU
的匹配

预期结果:

SKU     Shoot Date  ID
4PYCD   14/06/2015  Z1234
4PYCE   14/06/2015  H8767
4PYCF   14/06/2015  H7890
4PYCF   14/06/2015  Z3456
我已经尝试使用
TOP
函数很长一段时间了,现在可以使用各种子查询,但是我可以得到任何东西来满足我的需要,有人能帮我吗

当前简单SQL设置(没有尝试使用
TOP
):


亲切问候

我想您正在寻找以下产品:

SELECT TOP 2 tblSD_F4.SKU, tblStock.[Label No]
FROM tblStock 
INNER JOIN tblSD_F4 
ON tblStock.SKU = tblSD_F4.SKU;
基本上,虽然这有点粗糙,但它应该从
tblStock
表中提供两条随机匹配的记录。似乎您的主要问题是您正在进行
右连接
,而不是
内部连接


很抱歉,如果语法是关闭的,那么当涉及到查询设计时,Access真的会让我扫兴

我认为您正在寻找类似于:

SELECT TOP 2 tblSD_F4.SKU, tblStock.[Label No]
FROM tblStock 
INNER JOIN tblSD_F4 
ON tblStock.SKU = tblSD_F4.SKU;
基本上,虽然这有点粗糙,但它应该从
tblStock
表中提供两条随机匹配的记录。似乎您的主要问题是您正在进行
右连接
,而不是
内部连接



很抱歉,如果语法是关闭的,那么当涉及到查询设计时,Access真的会让我扫兴

您提到了两个表,但我假设您的查询有三个表,因为
SD
ScheduleDate
的缩写?。我还觉得可以在“选择列表”和“选择请求”表名之间进行交换。你能用你在整个问题中使用的统一命名来更新吗?当然,我做了这些。谢谢你是使用MySQL还是MS Access?在一个问题中同时包含两个标记是没有意义的,除非您正在执行某种多数据库应用程序。@Barmar我假设他只是将这些标记放在那里,因为他可能还不熟悉其中的差异。标签看起来有点像猎枪;-)我只是根据他查询中的语法假设,[]在那个里。@Newd我也这么认为。我试图提示他找出差异并解决问题。您提到了两个表,但我认为您的查询有三个表,因为
SD
ScheduleDate
的缩写?。我还觉得可以在“选择列表”和“选择请求”表名之间进行交换。你能用你在整个问题中使用的统一命名来更新吗?当然,我做了这些。谢谢你是使用MySQL还是MS Access?在一个问题中同时包含两个标记是没有意义的,除非您正在执行某种多数据库应用程序。@Barmar我假设他只是将这些标记放在那里,因为他可能还不熟悉其中的差异。标签看起来有点像猎枪;-)我只是根据他查询中的语法假设,[]在那个里。@Newd我也这么认为。我试图提示他找出差异并解决问题。您提到了两个表,但我认为您的查询有三个表,因为
SD
ScheduleDate
的缩写?。我还觉得可以在“选择列表”和“选择请求”表名之间进行交换。你能用你在整个问题中使用的统一命名来更新吗?当然,我做了这些。谢谢你是使用MySQL还是MS Access?在一个问题中同时包含两个标记是没有意义的,除非您正在执行某种多数据库应用程序。@Barmar我假设他只是将这些标记放在那里,因为他可能还不熟悉其中的差异。标签看起来有点像猎枪;-)我只是根据他查询中的语法假设,[]在那个里。@Newd我也这么认为。我想提醒他找出区别并解决问题。谢谢你回来找我。不幸的是,这不起作用,因为两个标签ID都是一样的。SD表上的项目也可能不在Stock表中,所以这就是为什么有一个正确的联接。我实际上需要的是,我已经尝试使用
COUNT
来实现这一点,但无法完全解决SD表中“SKU”上每个组的
COUNT
。然后使用该
COUNT
作为每个“SKU”的
TOP
变量。希望这有道理?!谢谢你回来找我。不幸的是,这不起作用,因为两个标签ID都是一样的。SD表上的项目也可能不在Stock表中,所以这就是为什么有一个正确的联接。我实际上需要的是,我已经尝试使用
COUNT
来实现这一点,但无法完全解决SD表中“SKU”上每个组的
COUNT
。然后使用该
COUNT
作为每个“SKU”的
TOP
变量。希望这有道理?!谢谢你回来找我。不幸的是,这不起作用,因为两个标签ID都是一样的。SD表上的项目也可能不在Stock表中,所以这就是为什么有一个正确的联接。我实际上需要的是,我已经尝试使用
COUNT
来实现这一点,但无法完全解决SD表中“SKU”上每个组的
COUNT
。然后使用该
COUNT
作为每个“SKU”的
TOP
变量。希望这有道理?!