2010-07-12 59 views
1

我需要通過mysql查詢來搜索一些信息,所以我可以編寫和或一起嗎?如果沒有,那麼過程是什麼?在我的查詢中,它會顯示任何一個字段或多個字段?場,那麼,如何編寫查詢瑞特現在我正在寫,如: -Mysql或查詢

$query="select * from fsb_profile 
     where profile_name = '".$_REQUEST['name']."' or 
       profile_member= '".$_REQUEST['type']."' or 
       profile_year= '".$_REQUEST['year']."' or 
       profile_course='".$_REQUEST['course']."'"; 

但是當我提交的所有字段,則是這樣的: -

$query="select * from fsb_profile 
     where profile_name = '".$_REQUEST['name']."' and 
       profile_member= '".$_REQUEST['type']."' and 
       profile_year= '".$_REQUEST['year']."' and 
       profile_course='".$_REQUEST['course']."'"; 

但在這裏它是不可能通過一個以上的字段進行搜索,是否必須編寫不同的查詢?或者我可以在一個查詢中進行查詢,以及如何?

+0

格式正確,以便其他人可以閱讀 – 2010-07-12 12:47:52

回答

0

您可以將ANDOR邏輯與括號()混合。

您還可以將IN用於多個OR邏輯。

select * from table where 1 in (1,2,3) 

你也應該閱讀有關SQL Injection

0

我不明白你實際上問...但我認爲你正在尋找嵌套查詢.....像下面... ...

SELECT * FROM t1 WHERE 2 = (SELECT COUNT(*) FROM t1);