如何在sql语句中有多个AND条件?

时间:2017-04-14 05:51:12

标签: mysql

我有查询将选择表格列

"Select tbl_products.item_category,
 tbl_products.images, 
 tbl_products.item_name,
 user_custom.mother_applicable,
 compatibility.motherboard,
 compatibility.form_factor

表及其列和数据

tbl_products

item_category,     item_name,       images,
Motherboard        Asus_board      'BLOB data here'
CPU                Intel_pentium   'BLOB data here'

此处兼容性表中,item_name的{​​{1}}也是 tbl_products中Motherboard的{​​{1}}

兼容性

name

user_custom

Motherboard

代码的延续

motherboard,   form_factor,
Asus_board     ATX Motherboard
Asus_board     Micro ATX Motherboard

指定要从中取出的列的位置,

关于这件事如何运作的解释 现在,mother_applicable, ATX Motherboard 条件必须比较`compatibility.form_factor ='ATX主板'只会输出兼容性为ATX的那些主板名称并且将等于同名在tbl_products中

投票-1,如果你不理解对不起的家伙,我只是想不通。 我仍然在构建这个系统http://g-ramcomputerhauz.com注册并登录并开始自定义pc以了解我的意思,如果选择Micro ATX Case,选择主板的下一步应该是空的,因为还没有添加主板可以安装在外壳上的Micro ATX ..如果您选择ATX主板可以安装的情况,那么所有主板的输出都是form_factor中的ATX ..谢谢!

2 个答案:

答案 0 :(得分:0)

Select tbl_products.item_category,
tbl_products.images, 
tbl_products.item_name,
user_custom.mother_applicable,
compatibility.motherboard,
compatibility.form_factor
FROM tbl_products, user_custom, compatibility
WHERE compatibility.form_factor = 'ATX Motherboard'
AND tbl_products.item_name = compatibility.motherboard

如果您使用联接,我确信有更好的答案。

答案 1 :(得分:0)

您需要先加入这些表并在where子句

中给出条件
Select t.item_category,t.item_name, u.mother_applicable,c.motherboard,
 c.form_factor  FROM tbl_products t join compatibility c on (t.item_name=c.motherboard) join user_custom u join u.mother_applicable=c.form_factor
where c.form_factor = 'ATX Motherboard'