在Joomla Jdatabase语法查询中转换SQL查询?

时间:2015-01-16 07:49:01

标签: sql joomla

我知道一点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来显示产品的城市。

有人可以帮忙吗?

1 个答案:

答案 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') . ')')