你好我刚接触到mysql所以原谅我大声笑但我在数据库中有一堆项目。 在网页上我访问这些项目将显示项目的结果然后在另一侧它将显示相同项目的结果,但5/11字段中的数据将乘以2.
我在这些论坛上尝试过一些建议,只是想弄清楚,但我想我只是输了。
所以我的桌子叫做项目。
它有22个列,例如名称攻击hp ept rpt mr和更多。
所以我可以使用
直接为此示例调用项目 <?php
error_reporting(1);
$con = mysql_connect("localhost","loginname","pass");
if (!$con) {
die("Can Not Connect: " . mysql_error());
}
mysql_select_db("db_name",$con);
$sql = "SELECT * FROM `items` WHERE (`items`.`item_id` =223)";
$myData = mysql_query($sql,$con);
while($record = mysql_fetch_array($myData)){
echo '<img src="/images/items/wozring_zpsyjxzc5cd.gif" alt=ring>';
echo "<br>";
echo "<strong>Item Name: </strong>";
echo $record['name'];
echo "<br>";
echo "<strong>Item Slot: </strong>";
echo $record['slot'];
echo "<br>";
echo "<strong>Attack: </strong>";
echo $record['attack'];
echo "<br>";
我在其他帖子和其他主题中看到过有关我应该使用的内容
$sql = "SELECT attack, hp, ept, rpt, mr ) FROM `items` WHERE (`items`.`item_id` =223) * 2";
但就像我说我喜欢4-5个小时学习这个,所以请原谅我,如果我完全错了。
答案 0 :(得分:0)
将乘法放在SELECT
列表中。
SELECT *, attack * 2 AS attack_double,
hp * 2 as hp_double,
ept * 2 as ept_double,
rpt * 2 as rpt_double,
mr * 2 as mr_double
FROM items
WHERE item_id = 223
你也可以在PHP中进行乘法运算:echo $record['attack'] * 2;
答案 1 :(得分:0)
不应将整个查询相乘,而应将字段相乘。
像我这样年轻的padawan:
SELECT
attack as 'baseAttackDamage',
attack * 2 as 'buffedAttackDamage',
hp as 'baseHP',
hp * 2 as 'buffedHP'
FROM items
WHERE item_id = 223
现在,您可以使用:$row['baseAttackDamage']
或增强的力量显示基本攻击伤害:$row['buffedAttackDamage']
。为字段使用别名。
当项目包含buff power属性/列(items.buffPower)时,你可以动态地执行它而不是默认的2x buff功能:
SELECT
attack as 'baseAttackDamage',
attack * buffPower as 'buffedAttackDamage',
hp as 'baseHP',
hp * buffPower as 'buffedHP'
FROM items
WHERE item_id = 223