mysql - 查询构建自动化

标签 mysql automation mysql-variables mysql-function

我有以下查询

select count(t1.guid)
from table t1
where t1.id=X;

X 是此查询的结果集

select ID 
from table t2 
where t2.flags=65537;

以上查询返回 84 个结果,全部为 INT 数据类型。

id是t2表中的主键, 和t1表中的外键;

guid 是 t1 表中的主键, 并且在其他任何地方都不存在。

对象O1在声明所有对象及其属性的表中具有唯一标识符(t2) 表t1中的GUID为上层调用的对象O1的每个实例分配唯一标识。 我想查看第二个查询中满足条件的每个对象的重复项数。

我想我应该声明一个变量和一个使用该变量的函数,但不知道从哪里开始或如何去做。

我通过手工破解 84 次解决了这个问题,但正在寻找更优雅、更具适应性的解决方案;

最佳答案

折腾了一整天,终于搞清楚了

只需将两个发布的查询链接在一起,但将“=”运算符更改为“in”

select count(t1.guid)
from table t1
where t1.id in
(select t2.ID 
from table t2 
where t2.flags=65537);

避免了手工黑客攻击!

关于mysql - 查询构建自动化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52298441/

相关文章:

php - 如何防止 PHP 中的 SQL 注入(inject)?

mysql - 无法重新连接到链接表 ODBC VBA

mysql - 在mysql中获取一周的最后一个值

TFS 2010/Msbuild 失败,StackOverFlowException

amazon-web-services - AWS CloudFormation 堆栈 : add load balancer listener based on condition

c# - 以编程方式查明进程是否需要用户输入

mysql - 获取每组分组结果的前n条记录

MySQL 查询获取每个组的最后 N 行

MySql 不同的问题 : Error Code: 1242 Subquery returns more than 1 row

mysql - 按分数对 mysql 中的用户进行排名