我不太喜欢数据库,也许我在说一些微不足道的事情。
我正在使用 MySql,我必须实现一个“复杂的”INSERT 查询。
我的意思是我必须做这样的事情:
INSERT INTO MarketDetails_CommodityDetails
(market_detail_id, commodity_detail_id) VALUES
( XXX, YYY)
其中 XXX 和 YYY 不是简单的值,而是两个 SELECT 查询的结果,都返回一个值(XXX 由 SELECT 查询返回,YYY 由另一个查询返回)。
我知道我可以执行这些查询,将输出存储在一个变量中,然后通过这些参数调用我的插入查询,但我想问是否有一种方法可以自动将其执行到我的 INSERT 查询中。
最佳答案
为什么要使用 insert values
?
只需执行一个insert select
INSERT INTO MarketDetails_CommodityDetails(market_detail_id, commodity_detail_id)
select * from
(select --Complex select for XXX)
cross join
(select --Complex select for YYY)
关于mysql - 如何实现 "complex"INSERT 查询来检索调用其他查询的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48910299/