我正在尝试为游戏“EVE Online”创建一个项目数据库供我和我的朋友使用,我设置了一个 SQL 服务器并创建了表格等,等等,一切都运行良好。但是,当我尝试从两个不同的表中导入数据并在同一个 html 表元素中将它们相互比较时,我遇到了一个问题。如果我只是从一个包含多列的表中导入,它会完美运行,但是当我尝试选择多个来源时会遇到问题。
我要拉的桌子是......
testmetrics.eve_inv_types 和 testmetrics.items_sales
理想情况下,我想从表 #1 中导入“name”、“type_id”、“jita_price_sell”列,从表 #2 中导入“price”、“type_id”、“station_id”和“qty_avail”。
我还在 jita_price_sell 和 price 上使用 ROUND 运算符来获得各种商品价格点的 2 位小数近似值。我也有它,以便在表 #2 中仅显示具有正确 station_id 的结果。但是一直报错!
到目前为止,这是我的代码...
<?php
$con = mysql_connect("testmetrics.db.10198246.xxxx.com","xxxx","xxxx");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("testmetrics", $con);
$result = mysql_query("
SELECT testmetrics.eve_inv_types.name, testmetrics.eve_inv_types.type_id, ROUND(testmetrics.eve_inv_types.jita_price_sell, 2) as jita_price_sell, ROUND(testmetrics.items_selling.price, 2) as price, testmetrics.items_selling.qty_avail, testmetrics.items_selling.sation_id, testmetrics.items_selling.type_id
FROM testmetrics.eve_inv_types, testmetrics.items_selling
WHERE testmetrics.eve_inv_types.type_id = testmetrics.items_selling.type_id, testmetrics.items_selling.station_id = '61000746'");
echo "<table class='sortable'>
<tr>
<th>Item Name</th>
<th>Price (Jita)</th>
<th>Price (K-6K16)</th>
<th>Qty Avail (K-6K16)</th>
</tr>";
while($row = mysql_fetch_array($result))
{
echo "<tr>";
echo "<td>" . $row['testmetrics.eve_inv_types.name'] . "</td>";
echo "<td>" . $row['jita_price_sell'] . "</td>";
echo "<td>" . $row['price'] . "</td>";
echo "<td>" . $row['testmetrics.items_selling.qty_avail'] . "</td>";
echo "</tr>";
}
echo "</table>";
mysql_close($con);
?>
您可以提供的任何帮助或见解将不胜感激。我还希望能够做一个数学函数,在那里我testmetrics.eve_inv_types.jita_price_sell + (testmetrics.eve_inv_types.volume * 300)
可以得到运输成本,并将其导出到它自己的列中。
非常感谢您要说的任何内容!
编辑:我知道我已经在这里寻求很多帮助,但是,有谁知道如何根据排序的列将返回限制为“前 100 名”?我正在使用 Javascript 插件来轻松排序!
这是为我解决它的代码!
SELECT eve_inv_types.name,
eve_inv_types.type_id,
Round(eve_inv_types.jita_price_sell, 2) AS jita_price_sell,
Round(items_selling.price, 2) AS price,
items_selling.qty_avail,
items_selling.type_id
FROM eve_inv_types
JOIN items_selling
ON eve_inv_types.type_id = items_selling.type_id
AND items_selling.station_id = '61000746'