嗨开发者/ dba朋友我有一些小问题,用于获取mysql表的详细信息如下:
我有cid可以说cid=xxx
我希望使用cid作为键输入在一条记录中输出(cid,ruser_id,dtoken,akey,prase)
我应该执行哪些mysql查询,还可以在执行时平滑更少的时间来优化此提取?
表结构如下:
tbl_mk(cid,pro_id) -> pro_id primary key of tbl_pro
tbl_luser(cid,ruser_id) -> ruser_id primary key of tbl_ruser
tbl_ruser(id,dtoken)->id is primary key of this tbl_ruser where its referenced in tbl_luser as ruser_id
tbl_pro(id,akey)-> id is primary key of this tbl_pro which its referenced in tbl_mk as pro_id
tbl_app(akey,prase)
primary id/reference
命名约定就像表的名称一样
tbl_name然后在tbl_name
的其他表中引用的id为name_id. where id is primary key of tbl_name
。
我知道这里有很多mysql专家,所以如何让它以更少的努力工作,我基本上是移动应用程序开发人员,但是有时间在处理一些mysql的东西需要web apis需要:)
谢谢,我真的很感激和敬佩,如果有人可以为我解决这个问题。我做了一个查询并获取详细信息,但似乎不正确的方式我需要更有效的方式,这就是为什么我在这里发布。
等待预期答案的最佳回复。
答案 0 :(得分:1)
只需加入表格。假设:cid
是您的输入:
SELECT l.cid, l.ruser_id, r.dtoken, p.akey, prase
FROM tbl_luser l
JOIN tbl_ruser r ON l.ruser_id = r.id
JOIN tbl_mk m ON l.cid = m.cid
JOIN tbl_pro p ON p.id = m.prod_id
JOIN tbl_app a ON a.akey = p.akey
WHERE l.cid = :cid