php - MySQL从多个不相关的表中选择数据

标签 php mysql select

我的网站上有一个页面,我想在其中列出客户订购零件或将自行车送修的单独实例。其中每个数据都包含在单独的表中。最终,我将按日期对这些数据进行排序,并使用 ORDER BY 和 COALESCE 来完成这项工作,但首先我必须提取数据,但我不知道该怎么做。

由于这两个表不相关,我不会使用 JOIN 来组合数据,我想我可能会使用 UNION,但后来了解到联合的数据和列数需要相似。我看到有人在某个地方只是抛出了一个逗号,但我无法让我的逗号工作。

这是我得到的:

$result = mysql_query("SELECT 
        p.part_id,
        p.part_num,
        p.descr,
        p.vendor,
        p.date_entered,
        p.date_ordered,
        p.date_rcvd,
        s.serv_id,
        s.make,
        s.model,
        s.yr,
        s.vin,
        s.mileage,
        s.in_date,
        s.out_date
    FROM parts p, services s 
    WHERE cust_id = '$cust_id'");

if (mysql_num_rows($result) == 0) {
    $transactions = array();
} else {
    while ($row = mysql_fetch_assoc($result)) {
        $transactions[] = $row;
    }
}

稍后

<? foreach ($transactions as $transaction): ?>
    <? if($transaction['part_id'] && $transaction['part_id'] != "") { ?>
        [DISPLAY PART INFO]
    <? } elseif($transaction['serv_id'] && $transaction['serv_id'] != "" { ?>
        [DISPLAY SERVICE INFO]
    <? } ?>
<? endforeach; ?>

有什么想法吗?

最佳答案

使用空列怎么样? 第一个表有名称、日期、件数列,第二个表有 name_cust、date_bike_entered 你可以这样做

Select name, date, pieces, null, null from table1
Union All
Select null, null, null, name_cust, date_bike_entered from table2

关于php - MySQL从多个不相关的表中选择数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11675308/

相关文章:

MySQL:SELECT * FROM 表 WHERE 字段 ="some text"不起作用

php - 如何使用 php 填充 manifest.json 文件?

php - DOCTYPE 打破了第 n 个 child 的背景颜色

MySQL 按周分组 从每月 1 日开始

php - 使用 Phinx 添加外键

sql - 在 PostgreSQL 8.4 中记录 SELECT 语句

php - 使用 jQuery 的动态链式选择框

php - 如何加快Magento网站?

php 执行无限循环

php - sql-Mysql : Left join on multiple rows and retrieve 1 row