gpt4 book ai didi

mysql - 从mysql表中获取唯一记录

转载 作者:行者123 更新时间:2023-11-29 14:31:34 26 4
gpt4 key购买 nike

我的 mysql 有问题。我需要从具有以下数据的表中获取某些记录集。

enter image description here

让我向大家介绍一下这张 table 。每个主要项目都有一个相似的项目,并且该相似的项目有一个尺寸。

但我们必须显示上表中尺寸最小的独特项目。

例如..主要项目是A,它在X中对应的项目,X也是主要的,它在A中是相似的项目,但是X也有一个相似的项目P,所以A,X,P都是相似的,在这些项目中最小大小是 P,大小为 4,因此我们通过查询从表中获取 P。

此外,记录为 1-M,所有主要项目均作为相似项目,并且所有相似项目都存在于数据库的主要字段中。而且这个表包含近3条lacs记录,一次获取和循环一条记录是行不通的。

任何帮助将不胜感激。

谢谢贾德·沙姆谢迪

最佳答案

给定架构:

CREATE TABLE similar_test ( id int(11) NOT NULL DEFAULT '0', 
Stock varchar(20) NOT NULL, SimilarStock varchar(20) NOT NULL,
ItemSize decimal(18,2) DEFAULT '0.00' ) ENGINE=InnoDB DEFAULT CHARSET=latin1;

请检查这一点:我正在考虑 1 级深度:

select * , s.ItemSize as minSize from similar_test as p
join similar_test a s on s.Stock= p.SimilarStock
where p.Sock='A'
order by s.itemSize
limit 1

如果这不能解决您在评论中所说的问题,其他选项是:

a.创建另一个表来保存需要预先计算的值

b.编写一个存储过程来遍历项目列表直至 N 层,因为 N 未指定 在这种情况下(正如我所怀疑的)

c.使用 PHP/或您正在使用的任何其他语言进行排序和分组

这也可能对您有帮助 hierarchical data
问候

关于mysql - 从mysql表中获取唯一记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9920493/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com