大佬教程收集整理的这篇文章主要介绍了mysql连接问题,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有两个带有以下各列的表:
表格1:
id, agent_name, ticket_id, category, date_logged
表2:
id, agent_name, department, admin_status
我想要实现的是从table1中选择代理部门等于table2的所有行.
我尝试了一些不同的join语句,但是语法错误,或者它不适用于此表设置.我是MysqL的初学者,据我了解,JOIN的知识范围很广!
我考虑过的另一种方法是将“部门”列复制到table1中,但这将需要在前端进行一些编码,而我试图看看如果不这样做,是否可以实现所需的结果.
任何帮助,不胜感激.
解决方法:
我不太明白你的问题…
只有table2有部门,它们唯一的共同点是agent_name.
我确实怀疑您的真正意思是:您想要Table1中的所有行,而代理商是来自某个部门的,那是您想要的吗?在这种情况下,应该执行以下操作(虽然尚未对其进行测试):
SELECT * FROM Table1
INNER JOIN Table2
ON Table1.agent_name = Table2.agent_name
WHERE Table2.department = 'somespecific value';
顺便说一句:(受其他人说的启发)agent_name听起来像是一个字符串值,您确实应该考虑使用table2中的id作为table1中的键(也许叫它agent_id)将它们链接在一起.外键(表之间的链接)应为真实的唯一ID.该部门可能应该也是一个id密钥.然后将是:
SELECT * FROM Table1
INNER JOIN Table2
ON Table1.agent_id = Table2.id
WHERE Table2.department = 'somespecific value';
以上是大佬教程为你收集整理的mysql连接问题全部内容,希望文章能够帮你解决mysql连接问题所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。