簡體   English   中英

如何從joomla表中選擇所有列?

[英]How to select all columns from joomla table?

我想選擇jos_content表中的所有列和Joomla中的jos_categories表中的一列。我使用了以下查詢:

 $db = JFactory::getDbo();
 $query = $db->getQuery(true);
 $query->select($db->quoteName(array('c.*', 'cat.alias')))
       ->from($db->quoteName('#__content', 'c'))
       ->from($db->quoteName('#__categories', 'cat'))
       ->where($db->quoteName('c.catid') .'='.$db->quoteName('cat.id'));
 $db->setQuery($query);
 $results = $db->loadObjectList();

但是當我使用上面的查詢時,它顯示以下錯誤:

 1054 - Unknown column 'c.*' in 'field list' SQL=SELECT `c`.`*`,`cat`.`alias` FROM `jos_content` AS `c`,`jos_categories` AS `cat` WHERE `c`.`catid`=`cat`.`id`

如果我使用'c.id'(或幾列名稱)而不是'c。*'它的工作完美。

如何解決這個問題。請幫助我任何人。

提前致謝

你的代碼工作:

$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select(array('c.*', 'cat.alias'))
->from($db->quoteName('#__content', 'c'))
->from($db->quoteName('#__categories', 'cat'))
->where($db->quoteName('c.catid') .'='.$db->quoteName('cat.id'));
$db->setQuery($query);
$results = $db->loadObjectList();

改為使用JOIN:

$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select(array('c.*', 'cat.alias'))
->from($db->quoteName('#__content', 'c'))
->join('INNER','#__categories as cat ON cat.id = c.catid')
->where($db->quoteName('c.catid') .'='.$db->quoteName('cat.id'));
$db->setQuery($query);
$results = $db->loadObjectList();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM