Dans SQL je veux afficher le nom de toutes les villes qui se terminent par une voyelle J'ai écrit la requête suivante SELECT UNIQUE CITY FROM STATION WHERE (CITY LIKE '%A' OR CITY LIKE '%E' OR CITY LIKE '%I' OR CITY LIKE '%O' OR CITY LIKE '%U') ORDER BY CITY; Ce qui est mal à cela? OriginalL'auteur Varun K R | 2015-08-29 oraclesql 4 Si vous voulez qu'il fonctionne avec inférieures/supérieures de lettres, vous pouvez utiliser UPPER(CITY), sinon c'est du tout bon. OriginalL'auteur Francois 8 Je pense que vous pouvez utiliser REGEXP_LIKE comme ceci: SELECT UNIQUE CITY FROM STATION WHERE REGEXP_LIKE(CITY, '[AaEeIiOoUu]$') ORDER BY CITY; OriginalL'auteur shA.t 3 Cela a fonctionné pour moi (Oracle 11g): select distinct s.city from station s where upper(substr(s.city,-1,1)) in ('A','E','I','O','U'); OriginalL'auteur McClAnalytics 2 Il me semble qu'il sera plus facile de le faire de cette façon: SELECT DISTINCT CITY FROM STATION WHERE CITY LIKE '%[AaEeIiOoUu]'* OriginalL'auteur DM14 1 Utilisation supérieur de la fonction.Cette fonction vous aidera à capitaliser la lettre de votre texte. SELECT DISTINCT CITY FROM STATION WHERE UPPER(CITY) LIKE '%A' OR UPPER(CITY) LIKE '%E' OR UPPER(CITY) LIKE '%I' OR UPPER(CITY) LIKE '%O' OR UPPER(CITY) LIKE '%U'; OriginalL'auteur Prosen Ghosh 1 Nous pouvons fournir un autre paramètre à regexp pour gérer les cas de sensibilité: i - insensible à la casse, c - sensible à la casse Par exemple: select distinct city from station where regexp_like(city,'[aeiou]$','i') order by city OriginalL'auteur Haritha Yalavarthi 1 Ci-dessous la solution fonctionne pour Oracle DB: select distinct(city) from station where UPPER(substr(city,1,1)) in ('A','E','I','O','U'); Si vous n'utilisez pas SUPÉRIEURE, alors votre cas de test dans lequel le nom de la ville commence avec une lettre minuscule va échouer. OriginalL'auteur Joginder Pawan 0 SELECT UNIQUE CITY FROM STATION WHERE (CITY LIKE 'A%' OR CITY LIKE 'E%' OR CITY LIKE 'I%' OR CITY LIKE 'O%' OR CITY LIKE 'U%'); % wild card personnage doit venir après l'alphabet OriginalL'auteur prasad 0 Dans MySql select distinct city from Station where ( city regexp '.[aeiou]$' ); OriginalL'auteur Walter White 0 Vous pouvez utiliser ce code pour votre but!! select distinct CITY from STATION where ( CITY like '%a' or CITY like '%e' or CITY like '%i' or CITY like '%o' or CITY like '%u') OriginalL'auteur Yagjna Kurra 0 Utiliser l'expression régulière SELECT DISTINCT(name) FROM city WHERE LOWER(name) RLIKE '.*[aeiou]$' OriginalL'auteur Mohammad Yasin Ud Dowla 0 Je pense que ce SELECT DISTINCT CITY FROM STATION WHERE CITY LIKE '%A' OR CITY LIKE '%E' OR CITY LIKE '%I' OR CITY LIKE '%O' OR CITY LIKE '%U'; OriginalL'auteur RKP 0 Le plus simple est l'utilisation d'une expression régulière: SELECT CITY FROM STATION WHERE CITY RLIKE "[aeiouAEIOU]$"; OriginalL'auteur Gowtham Prasath 0 select distinct(city) from station where upper(substr(city, 1,1)) in ('A','E','I','O','U'); Il travaille dans MySQL. Salut, pour faire de votre réponse plus lisible, vous pourriez l'envelopper dans un codeblock à l'aide de markdown. OriginalL'auteur Sunku Vamsi Tharun Kumar -1 Dans SQL Server, cela pourrait être autre version de la réponse select distinct city from station where right(city,1) in ('a','e','i','o','u') OriginalL'auteur Ashwini M -1 Pour Oracle select DISTINCT(CITY) from STATION where upper(SUBSTR(CITY,-1,1)) IN ('A','I','O','E','U'); OriginalL'auteur Surya Pratap -2 Si vous utilisez MySQL essayez cette solution: SELECT UNIQUE CITY FROM STATION WHERE (CITY REGEXP '%A$' OR CITY REGEXP '%E$' OR CITY REGEXP '%I$' OR CITY REGEXP '%O$' OR CITY REGEXP '%U$') ORDER BY CITY; OriginalL'auteur Mahmoud Abd El Samea Vous devez vous connecter pour publier un commentaire.
Si vous voulez qu'il fonctionne avec inférieures/supérieures de lettres, vous pouvez utiliser
UPPER(CITY)
, sinon c'est du tout bon.OriginalL'auteur Francois
Je pense que vous pouvez utiliser
REGEXP_LIKE
comme ceci:OriginalL'auteur shA.t
Cela a fonctionné pour moi (Oracle 11g):
OriginalL'auteur McClAnalytics
Il me semble qu'il sera plus facile de le faire de cette façon:
OriginalL'auteur DM14
Utilisation supérieur de la fonction.Cette fonction vous aidera à capitaliser la lettre de votre texte.
OriginalL'auteur Prosen Ghosh
Nous pouvons fournir un autre paramètre à
regexp
pour gérer les cas de sensibilité:i
- insensible à la casse,c
- sensible à la cassePar exemple:
OriginalL'auteur Haritha Yalavarthi
Ci-dessous la solution fonctionne pour Oracle DB:
Si vous n'utilisez pas SUPÉRIEURE, alors votre cas de test dans lequel le nom de la ville commence avec une lettre minuscule va échouer.
OriginalL'auteur Joginder Pawan
% wild card personnage doit venir après l'alphabet
OriginalL'auteur prasad
Dans MySql
OriginalL'auteur Walter White
Vous pouvez utiliser ce code pour votre but!!
OriginalL'auteur Yagjna Kurra
Utiliser l'expression régulière
OriginalL'auteur Mohammad Yasin Ud Dowla
Je pense que ce
OriginalL'auteur RKP
Le plus simple est l'utilisation d'une expression régulière:
OriginalL'auteur Gowtham Prasath
Il travaille dans MySQL.
OriginalL'auteur Sunku Vamsi Tharun Kumar
Dans SQL Server, cela pourrait être autre version de la réponse
OriginalL'auteur Ashwini M
Pour Oracle
OriginalL'auteur Surya Pratap
Si vous utilisez MySQL essayez cette solution:
OriginalL'auteur Mahmoud Abd El Samea