MySQL-获取下一列的两个值与条件匹配的列值



MYSQL我有一个包含动态数据的表,所以我按行处理动态数据。我想要一个列值,其中一个条目上同一列的两个值匹配,如以下所示:

数据红色打开[/tr><20CM>
id rack_id
1 101
2 101 14CM
3 101
4 102 绿色
5 102 14CM
6 102 打开
7 103 红色
8 103
9 103 打开
10 104 红色
11 104 14CM
12 104 关闭

您的问题可能有很多方法。但是,您可以从将数据连接在一起的基本方法开始。用";INNER JOIN";关键字不仅可以连接两个不同的表,还可以连接相同的表。

下面的语句根据rack_id将example_table连接到其自身中。这在一行中提供了所需的两个数据字段。

SELECT e.rack_id FROM example_table as e INNER JOIN example_table as e2 ON e2.rack_id = e.rack_id AND e.data = "Red" AND e2.data = "14CM"

只要看看你可以使用的关键词,以及它们如何帮助你。如果你想更深入一点:看看子查询,这也是解决问题的好方法。

您可以简单地为您的情况做您需要的任意多个条件,您可以使用类似的Where子句

SELECT*FROM table_name WHERE data='Red'AND data='14CM';

您可以使用逻辑运算符ANDORLIKE

有关详细信息文件

最新更新