2012-04-23 122 views
2

我想用模式在Drupal View查詢查詢。
使用上下文過濾器可以嗎?
爲了讓它更清楚,可以說搜索值是「測試」。「like」模式在Drupal視圖中搜索

默認搜索查詢是其中:

WHERE (((field_data_field_design_code.field_design_code_value = 'test')) 
AND(((node.status = '1') 

我想它想:

WHERE (((field_data_field_design_code.field_design_code_value like '%"tes"%')) 
AND(((node.status = '1') 

任何幫助,將不勝感激。

+0

您使用的是Drupal版本? – webbiedave 2012-04-23 15:11:33

+0

嗨,對不起我的錯誤。 這是Drupal 7 – 2012-04-24 07:37:08

回答

1

您可以如下使用db_query:

db_query('SELECT node.nid, node.title FROM {node} 
INNER JOIN field_data_field_design_code ON node.nid = field_data_field_design_code.nid 
WHERE field_data_field_design_code.field_design_code_value LIKE \'%%"%s"%\' AND node.status = %d', $keyword, 1); 

您需要使用%%的db_query使用LIKE,http://drupal.org/node/56400#comment-161218

3

您可以使用View Query alter。在查詢改變你會得到一個查詢的對象。在這個對象,你可以注入什麼你想要的 - Views Query Alter Example