0

我正在为客户开发一个项目,我需要将 2 个 Drupal 和 1 个 WordPress 安装迁移到 1 个单个 WordPress CMS 中。我必须保持完全相同的 URL,并确保新站点与当前的混乱站点几乎相同。

我在下面想出了这个 SQL 查询的怪物来提取所有 Drupal 帖子以插入 WordPress。

我现在的问题是,title下面的查询中是否有 2 个 MySQL 表列的名称....

SELECT n.nid, n.uid, FROM_UNIXTIME( n.created ) created, FROM_UNIXTIME( n.changed ) modified, n.TYPE, n.status, n.title, r.teaser, r.body, u.dst url, m.path, m.title, m.description, m.keywords
FROM drupal_node n
LEFT JOIN drupal_node_revisions r ON n.nid = r.nid
LEFT JOIN drupal_url_alias u ON CONCAT(  'node/', n.nid ) = u.src
LEFT JOIN drupal_simplemeta_data m ON CONCAT(  'node/', n.nid ) = m.path
WHERE n.TYPE
IN (
 'blog',  'story',  'page',  'forum',  'largeimage',  'error'
)

因此,当我检查结果时,这会导致问题,因为我的title结果将只是第一列。

有没有办法为我的结果重命名它?还是其他什么技巧?

Avar_export()显示它只是暴露 1title

我正在使用 PHP 和类似的东西来返回一个 PDO 对象......

$result = $stmt->fetchAll(PDO::FETCH_OBJ);
foreach($result as $row) {

    echo $row->title;

}
4

1 回答 1

2

我认为您可以使用AS给变量一个新名称

SELECT n.nid, n.uid, FROM_UNIXTIME( n.created ) created, FROM_UNIXTIME( n.changed ) modified, n.TYPE, n.status, n.title AS mastertitle, r.teaser, r.body, u.dst url, m.path, m.title AS slavetitle, m.description, m.keywords

现在您可以单独调用它们

echo $row->mastertitle;
echo $row->slavetitle;
于 2013-04-27T06:36:26.250 回答