我想从Concrete_samples中获取*,但只能从method_name中获取*,而不是来自concrete_compaction_methods中的id
SELECT * FROM concrete_samples,concrete_compaction_methods WHERE concrete_compaction_methods.id = concrete_samples.compaction_method AND workorder_id=1
这当前返回的是我想要的所有东西,除了它给了我不需要的方法表的id列。
我要执行的语句的伪代码是
SELECT * FROM concrete_samples, SELECT method_name FROM concrete_compaction_methods WHERE concrete_compaction_methods.id = concrete_samples.compaction_method AND workorder_id=1
我已经做了一些研究。我尝试使用工会,但我认为这不是正确或最整洁的解决方案
谢谢
答案 0 :(得分:1)
尝试以下-
SELECT concrete_samples.*,method_name
FROM concrete_samples inner join concrete_compaction_methods
on concrete_compaction_methods.id = concrete_samples.compaction_method
where workorder_id=1
答案 1 :(得分:1)
我强烈建议:
JOIN
语法。因此查询看起来更像这样:
SELECT cs.*, ccm.method_name
FROM concrete_samples cs JOIN
concrete_compaction_methods ccm
ON ccm.id = cs.compaction_method
WHERE cs.workorder_id = 1;
我猜测workorder_id
来自concrete_samples
,而不是其他表格。