Bonjour,
je remarque dans de nombreuse requetes SELECT la présence d'unet where 1 simplement. Je ne comprends pas à quoi cela sert, est-ce vraiment utile ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part WHERE 1
merci
Bonjour,
je remarque dans de nombreuse requetes SELECT la présence d'unet where 1 simplement. Je ne comprends pas à quoi cela sert, est-ce vraiment utile ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part WHERE 1
merci
Ou?je remarque dans de nombreuse requetes SELECT la présence d'un
Ce que vous dites est faux ce que vous devez voir c'estExpression de type non booléen spécifiée dans un contexte où une condition est attendue, près de '1'.
Ou quelque chose comme çà.
Code : Sélectionner tout - Visualiser dans une fenêtre à part WHERE 1=1
En général cela est utilisé dans le cas de requètes créées à la volée dans un code .NET par exemple et dans lequel des filtres sont ajoutés ou pas en fonction d'un contexte.
Cela permet au développeur de s'assurer qu'il y a déjà une clause WHERE...
pardon le code entier est :
donc si j'ai bien compris ce "WHERE 1" ne sert à rien ici ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT * FROM client WHERE 1 ORDER BY idClient
merci pour l'explication.
est syntaxiquement incorrecte. Ce doit être
Code : Sélectionner tout - Visualiser dans une fenêtre à part WHERE 1
Code : Sélectionner tout - Visualiser dans une fenêtre à part WHERE 1=1
est un trick pour permettre d'ajouter dynamiquement des conditions and ajoutant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part WHERE 1
ce qui permet d'eviter de devoir se soucier si c'est la premiere ou pas (ou dans ce cas il faudrait mettre
Code : Sélectionner tout - Visualiser dans une fenêtre à part and x = y
Par contre je pense que vous vous trompez de forum concernant le SGBD car SQL Server n'autorise pas ce genre de syntaxe.
Code : Sélectionner tout - Visualiser dans une fenêtre à part where x = y
MySQL par contre semble l'autoriser.
Vous êtes sur que vous ne confondez pas avec "ORDER BY 1" qui, sur certains SGBD (tous ?), permet de dire que le ORDER BY est fait sur la première colonne du SELECT.
Partager