基于其他列的值获取MySQL列根据其他列的值
问题描述:
我试图从woocommerce中抽出一些数据,并有90%的我想工作得很好,但是postmeta正在杀死我。我试图获取与帖子相关的postmeta条目的子集,而不是所有这些条目,如果我只选择一个meta_key,它可以正常工作,但倍数会从表中返回所有meta_key/meta_value对,无论post_id如何。我不是一个dba,我知道有足够的SQL让自己陷入困境。我已经完成了。现在我正在寻找一些指导。谢谢。基于其他列的值获取MySQL列根据其他列的值
select meta_key, meta_value from wp_postmeta where post_id=1923
AND meta_key='_billing_first_name'
OR meta_key='_billing_last_name'
答
的or
准则否定post_id=1923
。你可以使用括号:
select meta_key, meta_value
from wp_postmeta
where post_id=1923 and
(meta_key='_billing_first_name' or meta_key='_billing_last_name')
但使用in
可能会是你最好的选择:
select meta_key, meta_value
from wp_postmeta
where post_id=1923 and
meta_key in ('_billing_first_name', '_billing_last_name')
啊,太棒了,这做到了!谢谢! –