0

数据库中有表 database_product 和 database_orders,使用p.rid和选择o.useridp和如何o定义为指向 database_product 和 database_orders?

$query = $wpdb->prepare("
        SELECT p.rid, o.userid
        FROM {$this->dbtable}_orders o
        INNER JOIN {$this->dbtable}_product p ON p.productid = o.productid AND p.status = 'active'
        WHERE o.oid = %d AND o.transaction_id = %s
        LIMIT 1
        ",
        $oid, $tid
    );
4

2 回答 2

1

查询定义中有一个隐含的“as”关键字。阅读查询如下:

SELECT p.rid, o.userid
FROM {$this->dbtable}_orders as o
INNER JOIN {$this->dbtable}_product as p ON p.productid = o.productid AND p.status =   'active'
WHERE o.oid = %d AND o.transaction_id = %s
LIMIT 1

您可以使用“as”关键字来给表起别名,帮助您编写更短、更清晰的查询

查看http://dev.mysql.com/doc/refman/5.0/en/join.html了解详情

于 2013-10-10T17:07:32.010 回答
0

在您的选择中,声明

{$this->dbtable}_orders o

例如,说 {$this->dbtable}_orders 有“o”作为别名。因此,您可以在其他表达式中将该表称为“o”。

于 2013-10-10T17:10:13.487 回答