1

同じフィールド名を持つ 2 つのテーブルがあり、2 つのフィールド列からレコードを表示したいと考えています。

Table_a
    id date          user    test
    1   2013-08-08   Adam    Various    
    2   2013-08-08   Paul    Record

    Table_b

      id date          user    test
        1   2013-08-08   Adam    Record    
        2   2013-08-08   Paul    Mytest


    $sql = "Select Table_a.date, Table_a.user, Table_a.test, Table_b.date, Table_b.user, Table_b.test FROM table_a, Table_b where Table_a.user like table_b AND table_a.Date = table_b.date AND table_b.Date = '".date("Y-m-d", strtotime("today"))."'";
    $result = mysql_query($sql);
    $row = mysql_fetch_assoc($result); 


 echo "<p'><b>" . $row['user'] . "</b></p>";
 echo "<p><b>". $row['test'] ."</b></p>";
 echo "<p><b>". $row['test'] ."</b></p>";

たとえば、結果を Adam -various -record にしたいのです。つまり、3 番目のエコー"<p><b>". $row['test'] ."</b></p>";で table_b のレコードを表示したいのです。

ありがとう

4

3 に答える 3

5

SQLエイリアスを使用できます

SELECT column_name AS alias_name

コードの例

$sql = "SELECT Table_a.date AS tableA_date, 
               Table_a.user AS tableA_user,
               Table_a.test AS tableA_test,
               Table_b.date AS tableB_date,
               Table_b.user AS tableB_user, 
               Table_b.test AS tableB_test
        FROM Table_a AS tableA,
             Table_b AS tableB
        WHERE tableA_user
        LIKE tableB 
        AND tableA_date = tableB_date
        AND tableD_date = '".date("Y-m-d", strtotime("today"))."'";
于 2013-08-07T06:32:35.363 に答える
0

これを試して:

$sql = "Select
              a.date as adate,
              a.user as auser,
              a.test as atest,
              b.date as bdate,
              b.user as buser,
              b.test as btest
        FROM table_a a, Table_b b
        where 
              a.user like b.user
              AND a.Date = b.date
              AND b.Date = '".date("Y-m-d", strtotime("today"))."'";
echo "<p'><b>" . $row['auser'] . "</b></p>";
echo "<p><b>". $row['atest'] ."</b></p>";
echo "<p><b>". $row['btest'] ."</b></p>";

私が書いたことに注意してくださいa.user like b.usera.user like b間違っている。

于 2013-08-07T06:41:11.347 に答える
0

以下のクエリを使用します

Select table_a.user,table_a.test,table_b.test FROM table_a left join table_b on
table_a.user=table_b.user where table_a.Date = table_b.date AND table_b.Date = curdate()

以下のような結果が返されます

ここに画像の説明を入力

それがあなたの問題を解決すると思います。

于 2013-08-07T06:59:59.400 に答える