gpt4 book ai didi

mysql - 将相似产品分组到主要产品下的 SQL 代码

转载 作者:行者123 更新时间:2023-11-30 22:50:25 24 4
gpt4 key购买 nike

所以我有一个数据库,里面有很多化学物质。我这里有主要的化学物质

http://postimg.org/image/p1xviagk7/

这里我有所有其他化学物质,它们的名称略有不同,但它们是相同的。 http://postimg.org/image/dyh76t08h/

有很多 engineer_id 为 NULL 的化学物质

例如:山茶花是主要的化学名称。理想情况下,我想在 sql 中编写一个代码,如果看到

有机茶树(白茶)叶提取物

茶树(白茶)叶提取物

将它们归入主要成分山茶花下。

它现在的工作方式是,如果我看到带有 NULL engineer_id 的物质,我只需在主要化学名称文件夹或其他物质中搜索它的相似名称,然后如果我找到它,我会从找到的 id 中复制它substance 并粘贴到 NULL ingredient_id 中。我有大约 3 万种 NULL engineer_id 物质。

是否有一些代码可以将具有 NULL engineer_id 的物质与具有相似名称的其他物质进行匹配,然后它会以某种方式复制它们的成分 ID。或者它可以在主要化学名称文件夹下搜索相似名称,如果找到,将使用此 ID。

我做了一些研究,发现使用 Jaccard 索引可以解决这个问题。

但我是第一个合作社的一年级学生,还不知道如何实现它。如果您需要更多信息或希望我澄清一些事情,请告诉我。

只是更新

所以现在我只需要一些代码来找到所有具有相似名称的相似产品并使它们的 ID 相等。有可能吗?

最佳答案

您可以尝试使用通配符进行连接:

create table #substances (s_name nvarchar(100));
create table #main_ingredients (mi_name nvarchar(100));
insert into #substances (s_name) values ('ORGANIC CAMELIA SINENSIS (WHITE TEA) LEAF EXTRACT'),('CAMELIA SINENSIS (WHITE TEA) LEAF EXTRACT'),('HIGH FRUCTOSE CORN SYRUP'),('WHEATFLOUR');
insert into #main_ingredients (mi_name) values ('Camelia'),('Fructose'), ('Wheat');

select mi_name,
s_name
from #substances as S
join #main_ingredients as M on
S.s_name like '%'+mi_name+'%';

drop table #substances;
drop table #main_ingredients;

关于mysql - 将相似产品分组到主要产品下的 SQL 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28332059/

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