0

if/else 与以下内容如何进行论证。我想将变量 $condition 定义为表 A 和表 B 的交集,最终,在这个条件为真的地方,然后执行一些代码。

这是我拥有的 PHP(我正在尝试匹配 table1.field1 和 table2.field1 并且如果为真,那么我将在其中添加一个 CSS 类<tr>

$result = $dbh->query("SELECT field1, field2, field3, field4 FROM table1 ORDER BY field1 DESC");
$result->setFetchMode(PDO::FETCH_ASSOC);

$match = $dbh->query("SELECT table1.field1 FROM table1 INNER JOIN table2 WHERE table2.field1 = table1.field1");

$condition = **???????**

另外,有没有办法简化这段代码?我觉得它太长了。马克吐温有句名言……“对不起,这封信太长了,我没有时间把它缩短”。我希望我可以说这是相关的,但我已经有一段时间了!任何帮助将不胜感激。

4

1 回答 1

4

怎么样的东西(在你的第一个和唯一的查询中)

$result = $dbh->query("
    SELECT
        t1.field1,
        t1.field2,
        t1.field3,
        t1.field4,
        IF(t2.field1 IS NULL, 0, 1) `match`
    FROM
    table1 t1
        LEFT JOIN table2 t2 ON t2.field1 = t1.field1
");

(你应该`在 周围加上反引号()match,因为它是一个 MySQL 关键字)
并在你的循环中

<tr class="<?=$v["match"] ? "match" : ""?>">
于 2013-01-02T00:29:25.820 回答