gpt4 book ai didi

如果字段不相等,Mysql 查询会得到结果

转载 作者:行者123 更新时间:2023-11-29 00:29:41 25 4
gpt4 key购买 nike

我有这样的查询:

select a.*, ag.Winstpercentage from Artikels a 
inner join Artikelgroep ag on a.`Artgroep`=ag.Groepcode
where a.`Manuf_nr` in (some array)

在这个查询中,我有 price 字段。我需要比较所有这些字段的 Manuf_nr,如果相同,我需要检查 price 字段对于具有相同 Manuf_nr 的行是否不相等>。任何人都知道如何做到这一点?

更新:price 字段在 Artikels 表中,所以我在 a.* 下选择它我更改了查询,使其看起来像这样

SELECT * 
FROM `Artikels`
inner join (select * from Artikels) as totals
on Artikels.`Manuf_nr` = totals.`Manuf_nr` and
Artikels.`Vprijsexcl`!= totals.`Vprijsexcl`
where Artikels.`Manuf_nr` in
(select Manuf_nr from Artikels
group by Manuf_nr having count(*) >1)

但是时间太长了。任何人都知道如何加快它?更新:字段 price 是字段 Vprijsexcl

这是我的:

my table

我需要获取所有 Manuf_nr 相等且 Vprijsexcl 不相等的数据。

最佳答案

尝试:

SELECT * 
FROM `Artikels`
inner join Artikels as totals
on Artikels.`Manuf_nr` = totals.`Manuf_nr` and
Artikels.`Vprijsexcl`!= totals.`Vprijsexcl`

- where ... in (subquery) 子句是多余的,因为主查询可以返回来自在 Artikels 中有不止一行的制造商的结果表。

更新:要仅查看同一制造商的不同价格,请尝试:

SELECT `Manuf_nr`, group_concat(distinct `Vprijsexcl`) prices
FROM `Artikels`
GROUP BY `Manuf_nr`
HAVING count(distinct `Vprijsexcl`) > 1

关于如果字段不相等,Mysql 查询会得到结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17193077/

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