我知道一点SQL,但根本不知道Jdatabase。
我想写这个查询: 'SELECT deal_id,FROM FROM products,cities WHERE products.location_id = cities.id'
在Jdatabase语法中。
应该看起来像位:
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select(array('name', 'name'))
->from($db->quoteName('#__products','#__cities'))
->where($db->quoteName.....?????????
$db->setQuery($query);
$row = $db->loadRow();
然后,我想在数组中加载此查询的结果并显示一个特定的值。
我解释一下:这个数组将显示产品列表。 Irt将通过php循环完成,并且在每个产品上,我想通过使用数组和product_id来显示产品的城市。
有人可以帮忙吗?
答案 0 :(得分:0)
将其格式化为Sql-Command:
$query->select(array('#__products.name', '#__cities.name'))
->from($db->quoteName(array('#__products','#__cities')))
->where($db->quoteName('#__cities.id') . ' = ' . $db->quoteName('#__products.location_id'))
BUT ::: 考虑使用Left JOIN。
$query->select(array('#__products.name', '#__cities.name'))
->from($db->quoteName('#__products'))
->join('LEFT', $db->quoteName('#__cities') . ' ON (' . $db->quoteName('#__cities.id') . ' = ' . $db->quoteName('#__products.location_id') . ')')