Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 基于多个条件获取多个2多关系的记录_Mysql_Sql - Fatal编程技术网

Mysql 基于多个条件获取多个2多关系的记录

Mysql 基于多个条件获取多个2多关系的记录,mysql,sql,Mysql,Sql,我使用的是MYSQL数据库,我有下面3个表,其中表1和表2有多对多关系,映射存储在表3中 表1: id key value 1 Application java 2 Application erp 3 Application sap 4 DB mysql 5 DB oracle 6 DB sql 7 DB postg

我使用的是MYSQL数据库,我有下面3个表,其中表1和表2有多对多关系,映射存储在表3中

表1:

id  key             value
1   Application     java
2   Application     erp
3   Application     sap
4   DB              mysql
5   DB              oracle
6   DB              sql
7   DB              postgres
表2:

id  data            type
1   HTML            UI
2   JAVA            Backend
3   JavaScript      UI
4   CSS             UI
5   Query           DB
6   Procedure       DB
7   Function        DB
表3(绘图):

Q:我想要基于键和值的结果,它应该返回表2中的公共数据

例如:如果用户通过(key=application,value=java)和(key=db,value=sql)

然后它应该返回以下结果

Key             Value   Data        Type
Application     java    Procedure   db
query           db      Procedure   db
使用连接

select key,value,data,type from table_mapping m join
table1 t1 on m.Table1_id=t1.id
join table2 t2 on m.Table2_id=t2.id  

 where 
   (key,value) in ( ('application','java'),
                    ('query','db')
                   )

你在使用MySQL还是Oracle?`嗨。欢迎来到SO。请看:你试过什么?显示您当前的查询尝试。我正在使用MySQL@ShalabhRajput你查过了吗?对不起,我用错了查询。这是工作,但我没有得到预期的结果。它正在返回包含这两个键值对的所有记录。@ShalabhRajput create dbtable and data我已经在上面的链接中创建了表和数据。@ShalabhRajput链接在哪里
select key,value,data,type from table_mapping m join
table1 t1 on m.Table1_id=t1.id
join table2 t2 on m.Table2_id=t2.id  

 where 
   (key,value) in ( ('application','java'),
                    ('query','db')
                   )