Maison >base de données >tutoriel mysql >Oracle autorise-t-il les requêtes SELECT sans clause FROM et, si oui, quelle est l'approche recommandée ?
Oracle peut-il exécuter des requêtes SELECT sans clause FROM ?
Oracle, contrairement à SQL Server, ne prend pas en charge les requêtes SELECT sans clause FROM. Pour contourner le problème, il est courant d'utiliser la table double pour de telles opérations, comme le montre l'exemple ci-dessous :
Select 1,2+3, 'my dummy string' FROM DUAL
Cette pratique est-elle recommandée ?
L’utilisation de la double table pour les requêtes SELECT sans départ est considérée comme une bonne pratique dans Oracle. Dual est une table en mémoire qui utilise un chemin d'accès rapide (FAST DUAL) lorsque DUMMY n'est pas sélectionné, éliminant ainsi les opérations d'E/S.
À l'origine, dual se composait de deux enregistrements et était utilisé comme jeu d'enregistrements factice pour adhésion. Aujourd'hui, il ne contient qu'un seul enregistrement. Cependant, il permet de générer un nombre arbitraire de lignes à l'aide de la clause CONNECT BY :
SELECT level FROM dual CONNECT BY level <= 100
Autres plates-formes
Il est à noter que MySQL prend également en charge le utilisation de la syntaxe SELECT dual et fromless.
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!