- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有三个表,currency_types
、userdb
和 user_currency
。
userdb
有货币字段(gold
、sapphires
、amethysts
、garnets
, 和 pkeys
)。我想将这些货币字段中的数据移动到 user_currency
表中。但是 user_currency
表有字段 currency_id
和 value
字段。 currency_id
字段与 currency
types.
id` 字段相关。
我想我可以通过为每种货币制作一个 while
循环来做到这一点,但我想不出如何完成它,必须有更好的方法来完成它,我只是没有看见。
我知道 mysql_*
已被弃用。该站点正在重新编码以使用 MySQLi,因此没有必要提及它。
currency_types
表:
SQL query: SELECT * FROM `currency_types` LIMIT 0, 25 ;
id name
1 Gold
2 Sapphires
3 Amethysts
4 Garnets
5 Keys
6 F. Stones
7 Silk
8 Leather
9 Copper
10 Cotton
11 Iron
12 Potions
13 Silver
14 Brass
15 Steel
16 Adamantine
user_currency
表:
SQL query: SELECT * FROM `user_currency` LIMIT 0, 25 ;
id user_id currency_id value
userdb
表:
SQL query: SELECT `id`, `gold`, `sapphires`, `amethysts`, `garnets`, `pkeys` FROM `userdb` WHERE `id`=1 LIMIT 0, 25 ;
id gold sapphires amethysts garnets pkeys
1 301518 1370 946 82 272
PHP:(无法弄清楚如何获取 currency_id
字段)
$gold_query=mysql_query('SELECT `id`, `gold` FROM `userdb`');
while($gold=mysql_fetch_array($gold_query))
{
mysql_query('INSERT INTO `user_currency` (`user_id`, `currency_id`, `value`)
SELECT `id`, `gold`
FROM `userdb`
WHERE `id`='.$user['id']);
}
最佳答案
一次拍摄,根本没有 PHP 循环或 PHP,从 mysql GUI 或诸如此类的东西运行。
如果您想要 value=0 的,请删除每个的 where 子句。
INSERT INTO `user_currency` (`user_id`, `currency_id`, `value`)
select id,'gold',gold from userdb where gold<>0;
INSERT INTO `user_currency` (`user_id`, `currency_id`, `value`)
select id,'sapphires',sapphires from userdb where sapphires<>0;
INSERT INTO `user_currency` (`user_id`, `currency_id`, `value`)
select id,'amethysts',amethysts from userdb where amethysts<>0;
INSERT INTO `user_currency` (`user_id`, `currency_id`, `value`)
select id,'garnets',garnets from userdb where garnets<>0;
INSERT INTO `user_currency` (`user_id`, `currency_id`, `value`)
select id,'pkeys',pkeys from userdb where pkeys<>0;
它假设 user_currency.id 是一个 auto_inc,因此没有在插入语句中提供。
关于php - 将 user_table 中的数据插入 currency_table,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32038887/
我有三个表,currency_types、userdb 和 user_currency。 userdb 有货币字段(gold、sapphires、amethysts、garnets , 和 pkeys
我是一名优秀的程序员,十分优秀!