Oracle
 sql >> Database >  >> RDS >> Oracle

confronto SQL Oracle

COLLATE Latin1_General_CS_AS non è una cosa della sintassi di Oracle, sembra una cosa del server sql

il tuo sql di base potrebbe essere:

ResultSet rs = statement.executeQuery("SELECT NAMES, AUTHOR, ID FROM BOOKS WHERE upper(NAMES) LIKE upper('%"+word+"%') OR upper(AUTHOR) LIKE upper('%"+word+"%') ");

ma questa è una scansione completa dell'indice/tabella a prescindere, quindi non sarà veloce. per ricerche di stringhe veloci, Oracle ha testo Oracle . ti suggerisco di leggerlo e implementare un indice di testo se devi eseguire questo tipo di ricerche illimitate (su tabelle di grandi dimensioni).