將查詢寫入底下時應該牢記什麼?根據程序條件在運行時查詢構建
$ sql =「And two = 2」;
$ sql。=「And three = 3」;
$ sqlquery =「select * from」。$ sql;
我要讓複雜的查詢,如例子中
將查詢寫入底下時應該牢記什麼?根據程序條件在運行時查詢構建
$ sql =「And two = 2」;
$ sql。=「And three = 3」;
$ sqlquery =「select * from」。$ sql;
我要讓複雜的查詢,如例子中
你最好添加where 1=1
到你的主查詢。這樣你可以或不可以有任何數量的AND加入條件。
像這樣:
$base_query = 'select * from table where 1=1';
$base_query.= 'and two = 2';
$base_query = 'and three = 3';
UPDATE:學說ORM風格quering:
//$em is instance of EntityManager
$qb = $em->createQueryBuilder();
$qb->select('u')
->from('User', 'u')
->where('u.id = ?1')
->orderBy('u.name ASC');
//you could add any part of query later
$qb->andWhere("u.name = 'John'");
$query = $qb->getQuery();
$result = $query->getResult();
我個人preffer這樣做與數組類似的東西:
$where = array(); $where[] = 'Two = 2' $where[] = 'Three = 3'; $sql = implode(' AND ', $where);
其他選項哪個我認爲更好地使用一些數據庫素食類/活躍記錄
關心。
其繁瑣的任務 – Arush
我喜歡添加變量,並使更新查詢也....m有困難使他們 – Arush
你會很難試圖推廣建築物選擇和更新查詢。我建議你看看一些ORM,比如教義。它比首先編寫普通的SQL更復雜,但維護它非常簡單。請參閱http://stackoverflow.com/questions/185358/simple-php-orm。 個人而言,我會推薦Doctrine ORM:http://www.doctrine-project.org/ – J0HN
什麼樣的思維方式更適合寫作查詢? – Arush