gpt4 book ai didi

php - 使用CodeIgniter进行Sql插入、选择

转载 作者:行者123 更新时间:2023-11-29 23:54:38 26 4
gpt4 key购买 nike

我遇到问题,不知道如何解决,请帮助我,所以我的数据库中有 2 个表:

dosar
id name date fk_verificator fk_administrator fk_user
user
id name surname is_verificator is_admin

我创建并插入到我的数据库中,在fk_verificator中存储了验证者用户的id,在fk_administrator中存储了管理员用户的id,所以我的问题是可以创建一个查询来获取这个dosar用户表中有 2 个用户(一名是管理员,一名是管理员)或者需要创建一个辅助表?提前谢谢。请帮助我例如,如果我有:

dosar table:
id name fk_verif fk_admin fk_user
1 dosarNr.1 2 1 1

user
id name surname is_verific is_admin
1 name1 surname1 N Y
2 name2 surname2 Y N

现在在这个选择中我想要得到:

dosar1    name1   surname1   name2   surname2

最佳答案

对于您预期的结果集,您必须使用 dosr 加入用户表两次,以获得管理员和验证记录的人员的名称

Mysql查询

select 
d.name,
u1.name name1,
u1.surname surname1,
u1.name name2,
u1.surname surname2
from dosar d
join `user` u1 on(d.fk_admin = u1.id and u1.is_admin = 'Y')
join `user` u2 on(d.fk_verif = u2.id and u2.is_verific = 'Y')

FIDDLE DEMO

事件记录查询

$result=$this->db->select('d.name,
u1.name name1,
u1.surname surname1,
u1.name name2,
u1.surname surname2')
->from('dosar d')
->join("user u1','d.fk_admin = u1.id and u1.is_admin = 'Y'")
->join("user u2','d.fk_verif = u2.id and u2.is_verific = 'Y'")
->get()
->result();

运行简单查询

$sql="select 
d.name,
u1.name name1,
u1.surname surname1,
u1.name name2,
u1.surname surname2
from dosar d
join `user` u1 on(d.fk_admin = u1.id and u1.is_admin = 'Y')
join `user` u2 on(d.fk_verif = u2.id and u2.is_verific = 'Y')";
$this->db->query($sql);

关于php - 使用CodeIgniter进行Sql插入、选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25433327/

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