【发布时间】:2014-07-11 08:11:47
【问题描述】:
我有一个保存用户数据的用户表
++ id | username | btc_recive_address++
----------------------------------------
++ 1 | myuser | 123kahpoiq31328 ++
订单表
++ order_id | user_id | amount | order_timestamp
------------------------------------------------------
++ h6765-a1s | 1 | 0.1 BTC | 2014-04-09 13:21:34
------------------------------------------------------
++ kzg765-a1 | 1 | 0.1 BTC | 2014-04-09 17:11:23
以及从比特币 API 检索数据的收集器表(这里我用 btc_recive_address 识别发送者)
++ block_chain | user | amount | timestamp
--------------------------------------------------------------------------------
++ 2d37e5351196... | 1 | 0.1 | 2014-04-09 16:21:34
--------------------------------------------------------------------------------
++ 123kjhg7231k.. | 1 | 0.1 | 2014-04-08 19:33:56
--------------------------------------------------------------------------------
我尝试将事务分配给 order_id,例如从订单和收集器表生成连接视图,但是当金额和用户相同时我会遇到问题
问题
用户下了多个相同价值的订单
0,1 X 3
我从 API 取回交易数据,而不是用接收者地址识别用户
someaddress -(这里的交易有 3 个传入确认)
比我尝试构建一个 MySQL 视图作为比较
带有收集器表的订单表,例如加入用户和金额。当金额和用户相同时,我认为我没有从 order_table 中获得唯一的 transaction_id
这里是视图查询
ALTER ALGORITHM=UNDEFINED DEFINER=`my_view`@`%` SQL SECURITY DEFINER VIEW `ci_orders_in` AS (
SELECT
`c`.`block_chain` AS `block_chain`,
`c`.`assigned_user` AS `assigned_user`,
`c`.`incoming_amount` AS `incoming_amount`,
`c`.`timestamp` AS `timestamp`,
`c`.`type` AS `type`,
`c`.`category` AS `category`,
`c`.`import_timestamp` AS `import_timestamp`,
`o`.`transaction_id` AS `transaction_id`,
`o`.`datum` AS `datum`,
`o`.`status` AS `status`,
`o`.`convert_coin` AS `convert_coin`,
`o`.`convert_coin_to` AS `convert_coin_to`,
`o`.`amount` AS `amount`,
`o`.`converted_amount` AS `converted_amount`,
`o`.`conversion_rate` AS `conversion_rate`,
`o`.`user` AS `user`,
`o`.`units_to_transfer` AS `units_to_transfer`,
`o`.`provision` AS `provision`
FROM (`ci_orders` `o`
JOIN `ci_collector` `c`
ON ((`o`.`user` = `c`.`assigned_user`)))
WHERE (`o`.`convert_coin` = `c`.`type`)
GROUP BY `o`.`converted_amount`)$$
DELIMITER ;
在这里我应该使用另一个连接,它应该给我最近的时间戳,但我不接受它
【问题讨论】:
-
您遇到什么问题可以具体说明吗?
-
问题是,例如,当我有来自同一用户的多个 0,1BTC 交易时,交易 ID 将无法获得应分配的。我已经在查看具有类似 transaction_id 的交易不应该发生的事情
-
仍然不清楚您是否可以添加更多示例数据和您正在查看的所需输出?
标签: mysql api transactions bitcoin