Maison > Article > base de données > Comment interroger dans Oracle qui ne contient pas de caractères spécifiés
Méthode : 1. Utilisez l'instruction "select * from table name which order_no not like materials" pour interroger ; 2. Utilisez l'instruction "select * from table name which not regexp_like (order_no, caractères)" pour interroger.
L'environnement d'exploitation de ce tutoriel : système Windows 10, version Oracle 11g, ordinateur Dell G3.
J'ai rencontré une exigence lors du processus de développement. La colonne de données que l'utilisateur souhaite extraire ne contient pas de chaînes YF, ZF et JD
Méthode 1 :
select * from table where order_no not like '%YF%' and order_no not like '%ZF' and order_no not like '%JD%'
Je pense que la méthode 1 est un peu stupide, je pensais que REGEXP_LIKE peut contenir plusieurs fonctions. Ajoutez "not" devant pour obtenir des fonctions non contenantes :
Méthode 2 :
select * from table where not regexp_like(order_no,'YF|ZF|JD')
Les deux. Les méthodes peuvent être mises en œuvre, mais il y a des problèmes d'efficacité. Après deux mois d'enquête 11 En comparant 10 000 éléments de données, la méthode 1 prend 18 secondes et la méthode 2 prend 15 secondes. Après trois tests consécutifs, la méthode 1 est toujours 2 à 3 secondes plus rapide. que la méthode 1. Si la quantité de données est importante, il est recommandé d'utiliser la méthode 1 !
Tutoriel recommandé : "Tutoriel vidéo Oracle"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!