我現在的SQL是:MySQL的左連接,其中連接表是空
SELECT * FROM `node`
LEFT JOIN `field_data_field_area_of_study_category`
ON `field_data_field_area_of_study_category`.`entity_id` = `node`.`nid`
WHERE `node`.`type` = 'area_of_study'
GROUP BY `node`.`nid`
現在,使其工作,我在列運行foreach
環路is_null()
。
我試圖在SQL查詢中模擬is_null()
檢查。
感謝您的閱讀。
編輯 這是運行is_null()
foreach循環。我認爲更好的方式來問我的問題將是:如何使SQL返回只有行從節點表中沒有匹配的field_data_field_area_of_study_category表?
foreach($aos_nodes as $aos_node):
if (is_null($aos_node->field_area_of_study_category_tid)):
$menu_item_display[$aos_node->title] = array(
'id' => $aos_node->nid,
'type' => 'node',
'children_markup' => '',
'icon' => '',
'name' => $aos_node->title,
'href' => drupal_get_path_alias('node/'.$aos_node->nid),
);
endif;
endforeach;
有什麼問題嗎? – 2011-12-28 22:02:02
更具體到@SergeiTulentsev - 如果加入的值爲空,你想要做什麼? – Eric 2011-12-28 22:03:10
'WHERE field IS NULL'? ['ISNULL(場)'](http://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html#function_isnull)? ['IFNULL(field,0)'](http://dev.mysql.com/doc/refman/5.0/en/control-flow-functions.html#function_ifnull)? – 2011-12-28 22:03:53