gpt4 book ai didi

mysql - 如何根据来自多行的数据过滤行

转载 作者:行者123 更新时间:2023-12-01 00:23:40 25 4
gpt4 key购买 nike

我有 mySQL 数据库:

CREATE TABLE `inventory` (
`id` int(11) NOT NULL auto_increment,
`device` int(11) NOT NULL,
`property` varchar(40) NOT NULL,
`value` varchar(200));

包含如下数据:

1, 1, 'code', '123'
2, 2, 'code', '12345'
3, 1, 'old_code', '987'
4, 3, 'code', '12345'
5, 2, 'old_code', '12345'

我需要获取“代码”<>“旧代码”的设备列表。我认为它应该是可行的,但我的思想无法绕过它。

最佳答案

你可以这样做:

SELECT 
device
FROM
(
SELECT
device,
MAX(CASE WHEN property = 'code' THEN value ELSE NULL END) AS Code,
MAX(CASE WHEN property = 'old_code' THEN value ELSE NULL END) AS old_code
FROM inventory
GROUP BY device
) AS t
WHERE code <> old_code;

关于mysql - 如何根据来自多行的数据过滤行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19248079/

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