0

mysql のいくつかのテーブルから異なる値を取得するのに問題があります。ここに私のクエリがあります:

select profile_term.*,application_gmbr.gmb,application.name_app from
relasi_useraplikasi,
(profile_term inner join application_gmbr on
profile_term.id_app=application_gmbr.id_app) inner join application ON
profile_term.id_app=application.id_app
where relasi_useraplikasi.id_user='2' 
and application_gmbr.id_app not like relasi_useraplikasi.id_app 
and profile_term.id_app not like relasi_useraplikasi.id_app
and application.id_app not like relasi_useraplikasi.id_app 
GROUP BY application.id_app
order by score asc limit 5;

これは機能しません。relasi_useraplikasi.id_app の id_app で値を取得します。

profile_term,application_gmbr,application からデータを取得したいのですが、ここで profile_term.id_app,application_gmbr.id_app,application.id_app は relasi_useraplikasi.id_app とは異なります。

これは私のデータテーブルです:

1.profile_term

id_app||profile
================
  1        A
  2        B
  3        C
  4        D
  5        E

2.application_gmbr

 id_app||gmb
===============
   1      p1
   2      p2
   3      p3
   4      p4
   5      p5

3.申請

 id_app||name_app
===============
   1      app1
   2      app2
   3      app3
   4      app4
   5      app5

3.relasi_useraplikasi

 id_app||id_user
===============
   1      1
   2      2
   3      3
   4      4
   5      5

私が望む結果は、私が必要とするすべてのレコードを私に与えます。

   id_app||profile|| gmb ||name_app
   ==================================
    1        A       p1      app1
    3        C       p3      app3
    4        D       p4      app4
    5        E       p5      app5

どんな助けでもいただければ幸いです

4

1 に答える 1