Ok saya memiliki tabel dengan kunci yang diindeks dan bidang yang tidak diindeks. Saya perlu menemukan semua record dengan nilai tertentu dan mengembalikan barisnya. Saya ingin tahu apakah saya dapat memesan dengan beberapa nilai.
Contoh:
id x_field
-- -----
123 a
124 a
125 a
126 b
127 f
128 b
129 a
130 x
131 x
132 b
133 p
134 p
135 i
semu: ingin hasil diurutkan seperti ini, where ORDER BY x_field = 'f', 'p', 'i', 'a'
SELECT *
FROM table
WHERE id NOT IN (126)
ORDER BY x_field 'f', 'p', 'i', 'a'
Jadi hasilnya adalah:
id x_field
-- -----
127 f
133 p
134 p
135 i
123 a
124 a
125 a
129 a
Sintaksnya valid tetapi ketika saya menjalankan kueri, ia tidak pernah mengembalikan hasil apa pun, bahkan jika saya membatasinya menjadi 1 catatan. Apakah ada cara lain untuk melakukannya?
Pikirkan x_field sebagai hasil tes dan saya perlu memvalidasi semua catatan yang termasuk dalam kondisi tersebut. Saya ingin memesan hasil tes dengan nilai gagal, nilai lulus. Jadi saya bisa memvalidasi nilai yang gagal terlebih dahulu dan kemudian nilai yang diteruskan menggunakan ORDER BY.
Yang tidak bisa saya lakukan:
- GROUP BY, karena saya perlu mengembalikan nilai record tertentu
- DI MANA x_field IN ('f', 'p', 'i', 'a'), saya memerlukan semua nilai karena saya mencoba menggunakan satu kueri untuk beberapa uji validasi. Dan nilai x_field tidak dalam urutan DESC / ASC
Setelah menulis pertanyaan ini saya mulai berpikir bahwa saya perlu memikirkan kembali ini, LOL!