saya cuma bisa menduga-duga, karena gak ada tabel dan data dummy-nya. jadi mungkin sbb:
tabel @t di dapat dari query sbb.
SELECT
Tabel3.NEAR_FID,
Tabel3.IN_FID,
Tabel3.NEAR_DIST,
Tabel3.MAngin
FROM Tabel1
INNER JOIN
Tabel2
ON Tabel1.ORIG_FID = Tabel2.ORIG_FID
INNER JOIN
Tabel3
ON Tabel1.IDJoin = Tabel3.IdJoin
jadi coba di setiap yang ada @t-nya ganti saja dengan query di atas.
:) :)
hasilnya sbb:
SELECT A.NEAR_FID,B.* FROM
(SELECT
Tabel3.NEAR_FID,
Tabel3.IN_FID,
Tabel3.NEAR_DIST,
Tabel3.MAngin
FROM Tabel1
INNER JOIN
Tabel2
ON Tabel1.ORIG_FID = Tabel2.ORIG_FID
INNER JOIN
Tabel3
ON Tabel1.IDJoin = Tabel3.IdJoin) A
INNER JOIN
(
SELECT IN_FID,MANGIN,MAX(NEAR_DIST) AS DATA FROM
(SELECT
Tabel3.NEAR_FID,
Tabel3.IN_FID,
Tabel3.NEAR_DIST,
Tabel3.MAngin
FROM Tabel1
INNER JOIN
Tabel2
ON Tabel1.ORIG_FID = Tabel2.ORIG_FID
INNER JOIN
Tabel3
ON Tabel1.IDJoin = Tabel3.IdJoin)
GROUP BY IN_FID,MANGIN
) B
ON A.IN_FID=B.IN_FID AND A.MANGIN=B.MANGIN AND A.NEAR_DIST=B.DATA ORDER BY
A.NEAR_FID
silahkan di coba ya.
--- In belajar-access@yahoogroups.com, Zakirman Ibros <zibros1@...> wrote:
>
> Terima Kasih atas solusinya Pak Edy, MANTAB.
>
> saya sudah coba dan hasilnya OK,
>
> Ada yang mau saya lanjutin
>
> Sebenarnya Tabel yang saya contohkan tersebut merupakan hasil Query dari tiga tabel, saya coba memodifikasi Query yang Bapak kasih, tapi belum bisa,Â
> kecuali dalam 2 langkah Query, bagaimana caranya supaya dalam satu Query ini Querynya:
>
> Hasil dari DataTbl
>
> SELECT Tabel3.NEAR_FID, Tabel3.IN_FID, Tabel3.NEAR_DIST, Tabel3.MAngin
> FROM (Tabel1 INNER JOIN Tabel2 ON Tabel1.ORIG_FID = Tabel2.ORIG_FID) INNER JOIN Tabel3 ON Tabel1.IDJoin = Tabel3.IdJoin
> ORDER BY Tabel3.IN_FID DESC , Tabel3.NEAR_DIST DESC;
>
> Thanks, Salam angat Juga
> Zibros
>
>
> ________________________________
> From: Edy <murid.belajaraccess@...>
> To: belajar-access@yahoogroups.com
> Sent: Monday, December 19, 2011 12:19 PM
> Subject: [belajar-access] Re: MAX, BY GROUP dan memilih ID rekor
>
>
> Â
> Sedikit tambahan.
> Biar tampilan sesuai urutan NEAR_FID, ditambahkan di akhirnya
> ORDER BY
> A.NEAR_FID
>
> Sehingga sql-nya jadi sbb:
>
> SELECT A.NEAR_FID,B.* FROM @T A
> INNER JOIN
> (
> SELECT IN_FID,MANGIN,MAX(NEAR_DIST) AS DATA FROM @T
> GROUP BY IN_FID,MANGIN
> ) B
> ON A.IN_FID=B.IN_FID AND A.MANGIN=B.MANGIN AND A.NEAR_DIST=B.DATA
> ORDER BY
> A.NEAR_FID
>
> --- In belajar-access@yahoogroups.com, "Edy" <murid.belajaraccess@> wrote:
> >
> > Misalnya, nama tabelnya @T
> >
> > Silahkan coba query berikut ini.
> >
> >
> > SELECT A.NEAR_FID,B.* FROM @T A
> > INNER JOIN
> > (
> > SELECT IN_FID,MANGIN,MAX(NEAR_DIST) AS DATA FROM @T
> > GROUP BY IN_FID,MANGIN
> > ) B
> > ON A.IN_FID=B.IN_FID AND A.MANGIN=B.MANGIN AND A.NEAR_DIST=B.DATA
> >
> >
> > salam hangat dan jabat erat,
> >
> > Edy Wiyono
> >
> >
> > --- In belajar-access@yahoogroups.com, Zakirman Ibros <zibros1@> wrote:
> > >
> > > Mohon bantuan:
> > >
> > > Bagaimana cara buat Query yang dapat menampilkan nila MAX, GROUP dan ID yang merupakan Primary Key.
> > >
> > > Saya mencoba untuk menggunakan FIRST atau LAST tetapi ternyata fungsi ini memilih yang akhir atau awal dalam urutan rekor, sementara rekor yang saya diinginkan lokasinya acak.
> > >
> > > Ini gambaran datanya:
> > >
> > > NEAR_FIDÂ Â Â IN_FIDÂ Â Â NEAR_DISTÂ Â Â Â Â Â Â Â Â Â MAngin
> > > 1Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 2Â Â Â Â Â Â 931.648207118691Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â U2Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 2Â Â Â Â Â Â 1116.54926872004Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â T
> > > 3Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 2Â Â Â Â Â Â 892.230579551041Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â T
> > > 4Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 2Â Â Â Â Â Â 925.854009319451Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â S
> > > 5Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 2Â Â Â Â Â Â 990.799258348377Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â S
> > > 6Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 2Â Â Â Â Â Â 958.285311671883Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â B
> > > 7Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 2Â Â Â Â Â Â 1184.95117820847Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â B
> > > 8Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 2Â Â Â Â Â Â 979.89939967956Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â U
> > > 9Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 2Â Â Â Â Â Â 931.648207118691Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â U
> > > 10Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 3Â Â Â Â Â Â 637.214970151922Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â B
> > > 11Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 3Â Â Â Â Â Â 453.77369093366Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â B
> > > 12Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 3Â Â Â Â Â Â 924.457771711512Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â B
> > > 13Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 3Â Â Â Â Â Â 812.451607032364Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â U
> > > 14Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 3Â Â Â Â Â Â 826.222348998176Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â U
> > > 15Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 3Â Â Â Â Â Â 885.546349977063Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â T
> > > 16Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 3Â Â Â Â Â Â 997.579790073901Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â T
> > > 17Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 3Â Â Â Â Â Â 812.773481150037Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â S
> > > 18Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 3Â Â Â Â Â Â 637.70151922 348Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â S
> > >
> > > saya membutuhkan data yang dihighligt dan bold, yang baru saya lakukan adalahÂ
> > >
> > > SELECT DataTbl.IN_FID, Max( DataTbl .NEAR_DIST) AS MaxOfNEAR_DIST, DataTbl .MAngin
> > > FROM DataTbl
> > > GROUP BY DataTbl .IN_FID, DataTbl .MAngin;
> > >
> > >
> > > tapi bagaimana cara memilih NEAR_FID
> > >
> > > Salam
> > > Zibros
> > >
> >
>
Wednesday, November 23, 2011
[belajar-access] Re: MAX, BY GROUP dan memilih ID rekor
__._,_.___
SPAM IS PROHIBITED
MARKETPLACE
.
__,_._,___
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment