gpt4 book ai didi

php - 将 user_table 中的数据插入 currency_table

转载 作者:可可西里 更新时间:2023-11-01 08:44:43 25 4
gpt4 key购买 nike

我有三个表,currency_typesuserdbuser_currency

userdb 有货币字段(goldsapphiresamethystsgarnets , 和 pkeys)。我想将这些货币字段中的数据移动到 user_currency 表中。但是 user_currency 表有字段 currency_idvalue 字段。 currency_id 字段与 currencytypes.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/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com