1. /*+SEMUA_ROWS*/
Hal ini menunjukkan bahwa metode optimasi berbasis biaya dipilih untuk blok pernyataan, dan throughput terbaik diperoleh untuk meminimalkan konsumsi sumber daya.
Misalnya:
PILIH /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN DARI BSEMPMS DI MANA EMP_NO='SCOTT';
2. /*+FIRST_ROWS*/
Hal ini menunjukkan bahwa metode optimasi berbasis biaya dipilih untuk blok pernyataan, dan waktu respons terbaik diperoleh untuk meminimalkan konsumsi sumber daya.
Misalnya:
PILIH /*+FIRST_ROWS*/ EMP_NO,EMP_NAM,DAT_IN DARI BSEMPMS DI MANA EMP_NO='SCOTT';
3. /*+PILIH*/
Hal ini menunjukkan bahwa jika terdapat informasi statistik tentang tabel akses dalam kamus data, maka metode optimasi akan didasarkan pada biaya dan akan diperoleh throughput terbaik; jika tidak terdapat informasi statistik tentang tabel akses dalam kamus data, maka metode optimasi akan didasarkan pada aturan biaya;
Misalnya:
PILIH /*+PILIH*/ EMP_NO,EMP_NAM,DAT_IN DARI BSEMMPMS DI MANA EMP_NO='SCOTT';
4. /*+ATURAN*/
Menunjukkan pemilihan metode optimasi berbasis aturan untuk blok pernyataan.
Misalnya:
PILIH /*+ ATURAN */ EMP_NO,EMP_NAM,DAT_IN DARI BSEMMPMS DI MANA EMP_NO='SCOTT';
5. /*+PENUH(TABEL)*/
Menunjukkan cara memilih pemindaian global untuk tabel.
Misalnya:
PILIH /*+FULL(A)*/ EMP_NO,EMP_NAM DARI BSEMPMS A WHERE EMP_NO='SCOTT';
6. /*+ROWID(TABEL)*/
Prompt dengan jelas menunjukkan bahwa tabel yang ditentukan diakses berdasarkan ROWID.
Misalnya:
PILIH /*+ROWID(BSEMMPMS)*/ * DARI BSEMMPMS DIMANA ROWID>='AAAAAAAAAAAAAAAA'
DAN EMP_NO='SCOTT';
7. /*+CLUSTER(TABEL)*/
Prompt dengan jelas menunjukkan bahwa metode akses pemindaian cluster dipilih untuk tabel yang ditentukan, yang hanya berlaku untuk objek cluster.
Misalnya:
PILIH /*+CLUSTER */ BSEMPMS.EMP_NO,DPT_NO DARI BSEMPMS,BSDPTMS
DIMANA DPT_NO='TEC304' DAN BSEMMPMS.DPT_NO=BSDPTMS.DPT_NO;
8. /*+INDEX(TABEL INDEX_NAME)*/
Menunjukkan metode pemindaian untuk indeks pemilihan tabel.
Misalnya:
SELECT /*+INDEX(BSEMPMS SEX_INDEX) GUNAKAN SEX_INDEX KARENA ADA BEBERAPA BSEMPMS */ DARI BSEMPMS WHERE SEX='M';
9. /*+INDEX_ASC(TABEL INDEX_NAME)*/
Menunjukkan metode pemindaian yang memilih indeks pada tabel dalam urutan menaik.
Misalnya:
PILIH /*+INDEX_ASC(BSEMMPMS PK_BSEMPMS) */ DARI BSEMMPMS DI MANA DPT_NO='SCOTT';
10. /*+INDEX_COMBINE*/
Pilih jalur akses bitmap untuk tabel yang ditentukan. Jika tidak ada indeks yang disediakan sebagai parameter di INDEX_COMBINE, kombinasi indeks bitmap Boolean akan dipilih.
Misalnya:
PILIH /*+INDEX_COMBINE(BSEMPMS SAL_BMI HIREDATE_BMI)*/ * DARI BSEMPMS
DIMANA SAL<5000000 DAN HIREDATE
11. /*+INDEX_JOIN(TABEL INDEX_NAME)*/
Prompt secara eksplisit menginstruksikan pengoptimal untuk menggunakan indeks sebagai jalur akses.
Misalnya:
PILIH /*+INDEX_JOIN(BSEMPMS SAL_HMI HIREDATE_BMI)*/ SAL,HIREDATE
DARI BSEMMPMS DIMANA SAL<60000;
12. /*+INDEX_DESC(TABEL INDEX_NAME)*/
Menunjukkan metode pemindaian yang memilih indeks pada tabel dalam urutan menurun.
Misalnya:
PILIH /*+INDEX_DESC(BSEMMPMS PK_BSEMPMS) */ DARI BSEMMPMS DI MANA DPT_NO='SCOTT';
13. /*+INDEX_FFS(TABEL INDEX_NAME)*/
Lakukan pemindaian indeks penuh secara cepat pada tabel yang ditentukan, bukan pemindaian tabel penuh.
Misalnya:
PILIH /*+INDEX_FFS(BSEMPMS IN_EMPNAM)*/ * DARI BSEMPMS DI MANA DPT_NO='TEC305';
14. /*+ADD_EQUAL TABEL INDEX_NAM1,INDEX_NAM2,...*/
Meminta Anda untuk secara eksplisit memilih rencana eksekusi dan menggabungkan pemindaian beberapa indeks satu kolom.
Misalnya:
PILIH /*+INDEX_FFS(BSEMPMS IN_DPTNO,IN_EMPNO,IN_SEX)*/ * DARI BSEMPMS DI MANA EMP_NO='SCOTT' DAN DPT_NO='TDC306';
15. /*+USE_CONCAT*/
Konversikan kondisi OR setelah WHERE dalam kueri menjadi kueri gabungan UNION ALL.
Misalnya:
PILIH /*+USE_CONCAT*/ * DARI BSEMMPMS DI MANA DPT_NO='TDC506' DAN SEX='M';
16. /*+TIDAK_PERLUAS*/
Untuk pernyataan kueri OR atau IN-LIST setelah WHERE, NO_EXPAND akan mencegahnya diperluas berdasarkan pengoptimal.
Misalnya:
PILIH /*+NO_EXPAND*/ * DARI BSEMMPMS DI MANA DPT_NO='TDC506' DAN SEX='M';
17. /*+SEKARANG TULIS*/
Operasi penulisan ulang kueri pada blok kueri dilarang.
18. /*+TULIS ULANG*/
Tampilan dapat diteruskan sebagai parameter.
19. /*+GABUNG(TABEL)*/
Mampu menggabungkan berbagai kueri tampilan yang sesuai.
Misalnya:
PILIH /*+MERGE(V) */ A.EMP_NO,A.EMP_NAM,B.DPT_NO DARI BSEMPMS A (SELET DPT_NO
,AVG(SAL) SEBAGAI AVG_SAL DARI KELOMPOK BSEMMPMS B OLEH DPT_NO) V DIMANA A.DPT_NO=V.DPT_NO
DAN A.SAL>V.AVG_SAL;
20. /*+NO_MERGE(TABEL)*/
Tampilan yang dapat digabungkan tidak lagi digabungkan.
Misalnya:
PILIH /*+NO_MERGE(V) */ A.EMP_NO,A.EMP_NAM,B.DPT_NO DARI BSEMPMS A (PILIH DPT_NO,AVG(SAL) SEBAGAI AVG_SAL DARI BSEMPMS B KELOMPOK OLEH DPT_NO) V DIMANA A.DPT_NO=V.DPT_NO DAN A.SAL>V.AVG_SAL;
21. /*+PESAN*/
Berdasarkan urutan kemunculan tabel di FROM, ORDERED menyebabkan ORACLE terhubung ke tabel tersebut dalam urutan tersebut.
Misalnya:
PILIH /*+ORDERED*/ A.COL1,B.COL2,C.COL3 DARI TABEL1 A,TABEL2 B,TABEL3 C DIMANA A.COL1=B.COL1 DAN B.COL1=C.COL1;
22. /*+USE_NL(TABEL)*/
Menggabungkan tabel yang ditentukan dengan sumber baris dari gabungan bersarang, menggunakan tabel yang ditentukan sebagai tabel bagian dalam.
Misalnya:
PILIH /*+ORDERED USE_NL(BSEMPMS)*/ BSDPTMS.DPT_NO,BSEMPMS.EMP_NO,BSEMPMS.EMP_NAM DARI BSEMPMS,BSDPTMS DI MANA BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;
23. /*+USE_MERGE(TABEL)*/
Menggabungkan tabel tertentu dengan sumber baris lain menggunakan gabungan pengurutan gabungan.
Misalnya:
PILIH /*+USE_MERGE(BSEMPMS,BSDPTMS)*/ * DARI BSEMPMS,BSDPTMS DI MANA BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;
24. /*+USE_HASH(TABEL)*/
Bergabung dengan tabel tertentu dengan sumber baris lain menggunakan hash join.
Misalnya:
PILIH /*+USE_HASH(BSEMPMS,BSDPTMS)*/ * DARI BSEMPMS,BSDPTMS DI MANA BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;
25. /*+DRIVING_SITE(TABEL)*/
Memaksa eksekusi kueri ke tabel yang berbeda dari lokasi yang dipilih oleh ORACLE.
Misalnya:
PILIH /*+DRIVING_SITE(DEPT)*/ * DARI BSEMPMS,DEPT@BSDPTMS DI MANA BSEMPMS.DPT_NO=DEPT.DPT_NO;
26. /*+TERKEMUKA(TABEL)*/
Gunakan tabel yang ditentukan sebagai tabel pertama dalam urutan penggabungan.
27. /*+CACHE(TABEL)*/
Saat melakukan pemindaian tabel penuh, petunjuk CACHE dapat menempatkan blok pengambilan tabel di akhir yang paling terakhir digunakan dari daftar LRU terbaru di cache buffer.
PILIH /*+PENUH(BSEMPMS) CAHE(BSEMPMS) */ EMP_NAM DARI BSEMPMS;
28. /*+NOCACHE(TABEL)*/
Saat melakukan pemindaian tabel penuh, petunjuk CACHE dapat menempatkan blok pengambilan tabel di akhir yang paling terakhir digunakan dari daftar LRU terbaru di cache buffer.
PILIH /*+PENUH(BSEMPMS) NOCAHE(BSEMPMS) */ EMP_NAM DARI BSEMPMS;
29. /*+TAMBAHKAN*/
Memasukkan langsung ke ujung meja dapat meningkatkan kecepatan.
Misalnya:
masukkan /*+append*/ ke dalam test1 pilih * dari test4 ;
30. /*+TIDAK ADA LAMPIRAN*/
Memulai penyisipan reguler dengan menghentikan mode paralel selama masa pernyataan penyisipan.
Misalnya:
masukkan /*+noappend*/ ke dalam test1 pilih * dari