gpt4 book ai didi

sql - 在 sql 查询中使用 DISTINCT 不起作用

转载 作者:行者123 更新时间:2023-12-03 23:31:58 26 4
gpt4 key购买 nike

我有以下关系。 Database Relationship

这是我的查询:

 sql = "SELECT DISTINCT g.ExeName, d.FileRec, d.RefDes, d.Title as [Component Title],
c.Title AS [Sheet Title], f.FileName, f.Title AS [Sim Schematic Title] FROM
(((((((Projects AS a INNER JOIN ProjectFile AS b ON a.RecNo=b.ProjectRec)
INNER JOIN Files AS c ON b.FileRec=c.RecNo)
INNER JOIN Components AS d ON c.RecNo=d.FileRec)
INNER JOIN CompP2Sim AS e ON d.RecNo=e.CompRec)
INNER JOIN p2Sim AS f ON e.p2SimRec=f.RecNo)
INNER JOIN ExeTable g ON f.ExeRec=g.RecNo)
INNER JOIN EffecP2Sim AS h ON f.RecNo=h.p2SimRec)
WHERE d.StandardRec = " + b.Tag + " and a.RecNo = " + cbModel.SelectedValue + "
AND c.SystemRec = " + (int)systemMode +
" AND d.RecNo IN (SELECT DISTINCT CompRec from CompP2Sim) AND h.ModelRec = " + cbModel.SelectedValue + " order by d.refdes";

但是通过这个查询,我仍然得到重复。我如何才能使 P2Sim 的 RecNo 与众不同。

这是结果:

enter image description here

它正在复制相同的结果,我只想获得没有重复 p2sim RecNo 的结果。在这个结果中,文件 rec 不同,但它们都有相同的 P2Sim 的 RecNo。我试图对查询进行分组,但我不能。每次我尝试运行它时都会出错。 “RefDes 列不能被罚款。”我想把 () 放在哪里对 Distinct 进行分组并不重要,我得到了那个错误。

最佳答案

select distinct适用于整个行,而不仅仅是一个字段。例如

SELECT DISTINCT foo, bar, baz

应该多读为
SELECT DISTINCT(foo,bar,baz)

并不是:
SELECT DISTINCT(foo), NON-DISTINCT(bar), NON-DISTINCT(baz)

如果您希望某个特定字段在您的查询中是唯一的,那么您应该 group在那个领域。

关于sql - 在 sql 查询中使用 DISTINCT 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23615375/

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