我只是想知道是否可能
例如我有一个查询
query = String.format("SELECT * FROM assetParamater LEFT OUTER JOIN SpecialOffer USING (assetID) WHERE assetParameter.assetID = %d;", id);
所有看起来都很好,但问题是id,实际上是特价商品ID而不是assetId。
所以我需要传递这个查询的结果
QUERY RESULT = "Select assetID from assetParameter where SpecialOffer.specialOfferID = %id;", id);
query = String.format("SELECT * FROM assetParamater LEFT OUTER JOIN SpecialOffer USING (assetID) WHERE assetParameter.assetID = %d;", QUERY RESULT);
有谁知道如何做到这一点的方法?我很欣赏它并不是最干净的方式,但我坚持将特殊优惠ID作为身份传递,所以任何帮助都会受到赞赏。
答案 0 :(得分:2)
在这种情况下只是定期加入有什么问题?
SELECT Column1, Column2
FROM assetParameter
JOIN SpecialOffer
ON assetParameter.assetID = SpecialOffer.assetID
WHERE SpecialOffer.specialOfferID = %id
请不要使用SELECT *
- 最好指定所需的列。
如果您只想查询assetParameter表中的数据,也可以使用子查询...
SELECT Column1, Column2
FROM assetParameter
WHERE assetID = (select assetID
from SpecialOffer
WHERE SpecialOffer.specialOfferID = %id)