mysql - 如何根据查询结果设置变量?

标签 mysql sql

我有类似以下内容:

select value1 from Table1 where id='123';

结果='foo'

然后我手动输入结果“foo”来设置变量@v1:

SET @v1='foo';

然后我使用该变量来计算其他一些查询。

select value2 from Table2 where table2Id=@v1;
select value3 from Table3 where table3Id=@v1;
select value4 from Table4 where table4Id=@v1;

是否可以从第一个查询的结果中设置@v1,而无需输入它?喜欢

SET @v1 = select value1 from Table1 where id='123';

最佳答案

您可以加入表格:

select Table2.value2 from Table2 left join Table1 on Table2.table2Id = Table1.id

对其他表(Table3、Table4)执行此操作也没有问题。如果您希望所有这些查询的结果作为一个表,请使用 UNION。

关于mysql - 如何根据查询结果设置变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29121302/

相关文章:

php - 从mysql表的多列中搜索值

JSON 的 MySql 索引

php mysql查询连接两个表

sql - Oracle 中所有重音字符的正则表达式

mysql - MySQL 查询速度慢需要改进

mysql - 如何在 MySQL 中找到所有具有特定列名的表?

php - PHP mysqli 中的存储过程和准备语句

sql - 返回列名和不同的值

php - 使用准备好的语句上传图像文件位置

c# - SqlParameter Constructor Integer长度问题