加入两个表mysqli

时间:2014-10-30 19:52:52

标签: sql

我有一个关于我从两张桌子中选择的问题。我有这张桌子:

         pubstats                                sites

 `id` int(11) NOT NULL,                   `id` int(11) NOT NULL,                          
  `website_id` varchar(10) NOT NULL,      `username` varchar(100) NOT NULL,
  `user_id` varchar(10) NOT NULL,         `url` varchar(250) NOT NULL,
  `amount` float(10,4) NOT NULL,          `name` varchar(50) NOT NULL,  
  `impressions` varchar(30) NOT NULL,     `category` varchar(50) NOT NULL,
  `date` date NOT NULL                    `date` date NOT NULL,
                                          `status` varchar(50) NOT NULL DEFAULT 'pending'

我想从pubstats中选择来自网站和展示次数的所有日期并显示它们!我尝试了另一个选择循环但不工作,我想使用JOIN函数!

现在我有这个选择显示来自网站表的日期,我希望每个网站显示展示次数和金额:

$stmt = $mysqli->prepare("SELECT id, username, url, name, category, date, status FROM sites WHERE username = '$username' order by id DESC");
$stmt->execute();
mysqli_stmt_bind_result($stmt, $id, $username, $url, $name, $category, $date, $status);
$stmt->store_result();

1 个答案:

答案 0 :(得分:0)

尝试此INNER JOIN查询

SELECT a.*, b.impression, b.amount
FROM sites a
INNER JOIN pubstats b
ON a.id = b.website_id

使用此查询,您将从表站点(别名表a)中选择所有列,并从表pubstats(别名表b)中仅选择两列