字段名称相同时的SQL连接

new*_*ewt 1 mysql sql drupal join

我在节点和url_alias中都有字段"language".当我进行转储时,第二个"语言"变量会覆盖第一个.如何识别这两个变量?

$string =   "SELECT * FROM {node} as node " .
            " LEFT JOIN {url_alias} as url " .
            " ON url.src = CONCAT('node/', node.nid) " .                
            " ORDER BY node.type , node.nid " ;

$result= db_query($string);
while ($row = db_fetch_object($result)){
echo $row->language;
var_dump($row);
Run Code Online (Sandbox Code Playgroud)

Red*_*ter 6

SELECT子句中显式指定列名而不是使用*,并为任何重复的列名提供别名.例如,

SELECT node.nid,
    node.language as NodeLanguage,
    url.language as UrlLanguage
FROM {node} as node 
LEFT JOIN {url_alias} as url  
ON url.src = CONCAT('node/', node.nid)                 
ORDER BY node.type , node.nid
Run Code Online (Sandbox Code Playgroud)

  • @newt:你的问题有28个单词,不包括查询和标签.你能行的! (4认同)