我有两个 MySQL 数据库表:'header' 和 'lookup'。
我的“ header ”表中有一个名为“协议(protocol)”的字段,如果我运行我的数据包捕获引擎,将在其中填充数据。而且,我还有“信息”字段,它会在其中显示消息的类型(例如,Type 135/Type 137 等) 因此,该字段将包含不同类型的协议(protocol)。
我想做的是:
我想计算第一个表(标题)中特定类型消息的实例。例如,我想计算特定协议(protocol)具有类型 135(将显示在信息中)的实例。 这是对的吗?如果没有,请提供正确的 SQL。
SELECT COUNT(info) FROM project.header WHERE info="Type 135";
接下来我要做的是插入数字 在第一个表中的“信息”字段中出现到“count1”字段中 另一个名为“查找”的表。
例如, 如果第一个表中总共有 5 个 Type 135 消息实例,我想将数字(此处为 5)插入到第二个表字段(count1)的相应字段中,插入到我创建为“Type 135”的行中。
请务必向我提供实现此目的的步骤。
最佳答案
如果 info
中不存在该行,则使用 insert
。但是,我猜该行确实存在,因此您将更新与相关子查询一起使用:
update lookup l
set count1 = (select count(*)
from project.header h
where h.info = l.info
);
如果您只想更新一行,您可以添加 where l.info = 'Type 135'
。
关于mysql - 计算第一个数据库表的列中单词的实例并将其添加到另一个表的行中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35545107/