私はこの3つのテーブルRetailer、imovo、rbpos_eposを持っています。私がしていることは、それらを一致させ、ページに印刷する結果を取得することです。
私がする必要があるのは、これらの結果を新しいテーブルに挿入することです。小売業者と imovo の 2 つのテーブルを照会する「一致」ボタンを作成し、一致は :matching という名前の新しいテーブルに移動します。
重複を避けるために必要なのは、小売業者のテーブルから削除し、一致した行をimovoすることです..
一致させるために使用するクエリは次のとおりです。
$data = mysql_query( "select r.`time`, r.`epos_id`, r.`date`,re.`location`,i.`user_id`,i.`mobile_number`,
i.`time`, i.`rbpos_id`, i.`date`
from retailer r
join rbpos_epos re on r.epos_id = re.epos_id
join imovo i on i.rbpos_id = re.rbpos_id
and addtime(r.`time`, '0:0:50') > i.`time`
and r.`time` < i.`time`
and r.`date` = i.`date`;
")
or die(mysql_error());
Print "<table border cellpadding=3>";
Print "<tr>";
Print "<th>Date:</th>
<th>Time</th>
<th>Location</th>
<th>User ID</th>
<th>Mobile Number</th>";
Print "</tr>";
while($info = mysql_fetch_array( $data ))
{
Print "<tr>";
Print " <td>".$info['date'] . "</td>
<td>".$info['time'] . " </td>
<td>".$info['location'] . " </td>
<td>".$info['user_id'] . " </td>
<td>".$info['mobile_number'] . " </td>
</tr>";
}
印刷された行は、一致するテーブルに挿入する必要がある行です..ありがとう!
私はこれを試しました:
$data = mysql_query( "INSERT INTO Matching(date, time, location, user_id, phone)
SELECT
r.`date`,
`time`,
re.`location`,
i.`user_id`,
i.`mobile_number`
from retailer r
join rbpos_epos re on r.epos_id = re.epos_id
join imovo i on i.rbpos_id = re.rbpos_id
and addtime(r.`time`, '0:0:50') > i.`time`
and r.`time` < i.`time`
and
r. date
= 私。date
; ")しかし、私はエラーが発生します:
Column count doesn't match value count at row 1