我创建了 2 个具有以下架构的表
CREATE TABLE `users` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`email` varchar(64) DEFAULT NULL,
`password` varchar(64) DEFAULT NULL,
`item_name` varchar(11) DEFAULT NULL,
`subscr_id` varchar(64) DEFAULT NULL,
PRIMARY KEY (`id`)
CREATE TABLE `payments_data` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`subscr_id` varchar(64) DEFAULT NULL,
`txn_type` varchar(64) DEFAULT NULL,
`subscr_date` varchar(64) DEFAULT NULL,
`period3` varchar(11) DEFAULT NULL,
`amount3` varchar(64) DEFAULT NULL,
`item_name` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
在生产环境中,我将收到一封电子邮件(存储在用户表中),然后获取该电子邮件的subscr_id
。然后我需要为其 payments_data.subscr_id=users.subscr_id
txn_type
基本上,我正在尝试获取特定电子邮件
的txn_type
。我尝试用 JOIN 解决这个问题,但我的理解很浅..知道如何创建它吗?
最佳答案
您使用 JOIN 和 WHERE 过滤电子邮件地址的查询应该是这样的。
SELECT
payments_data.txn_type
FROM
users
INNER JOIN
payments_data
ON
users.subscr_id = payments_data.subscr_id
WHERE
users.email = 'example@hotmail.com'
关于mysql - 从mysql中的多个表中获取复杂的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44021610/