-----Message d'origine-----
Bonjour,
A moins soit d'un test du type "if then" dans une proc
procédure texte exécuté avec sp_executesql dans lequel on
nécessaire, je ne vois pas.
Phil.
________________________________________________________
Philippe TROTIN
Microsoft Services France
"Etienne" wrote in
news:00b201c4e459$08633c40$
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
-----Message d'origine-----
Bonjour,
A moins soit d'un test du type "if then" dans une proc
procédure texte exécuté avec sp_executesql dans lequel on
nécessaire, je ne vois pas.
Phil.
________________________________________________________
Philippe TROTIN
Microsoft Services France
"Etienne" <anonymous@discussions.microsoft.com> wrote in
news:00b201c4e459$08633c40$3501280a@phx.gbl...
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
-----Message d'origine-----
Bonjour,
A moins soit d'un test du type "if then" dans une proc
procédure texte exécuté avec sp_executesql dans lequel on
nécessaire, je ne vois pas.
Phil.
________________________________________________________
Philippe TROTIN
Microsoft Services France
"Etienne" wrote in
news:00b201c4e459$08633c40$
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
-----Message d'origine-----
Bonjour,
A moins soit d'un test du type "if then" dans une proc
procédure texte exécuté avec sp_executesql dans lequel on
nécessaire, je ne vois pas.
Phil.
________________________________________________________
Philippe TROTIN
Microsoft Services France
"Etienne" wrote in
news:00b201c4e459$08633c40$
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
-----Message d'origine-----
Bonjour,
A moins soit d'un test du type "if then" dans une proc
procédure texte exécuté avec sp_executesql dans lequel on
nécessaire, je ne vois pas.
Phil.
________________________________________________________
Philippe TROTIN
Microsoft Services France
"Etienne" <anonymous@discussions.microsoft.com> wrote in
news:00b201c4e459$08633c40$3501280a@phx.gbl...
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
-----Message d'origine-----
Bonjour,
A moins soit d'un test du type "if then" dans une proc
procédure texte exécuté avec sp_executesql dans lequel on
nécessaire, je ne vois pas.
Phil.
________________________________________________________
Philippe TROTIN
Microsoft Services France
"Etienne" wrote in
news:00b201c4e459$08633c40$
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
Solution facile: utilisez un case pour chaque colonne:
Order by Case @OrderId when 1 then ColName else 0 end,
Case @OrderId when 2 then ColDate else 0 end,
Case @OrderId when 3 then ColSize else 0 end
Vous pouvez également choisir de tout forger (caster) vers des chaînes de
caractère.
S. L.
"Etienne" wrote in message
news:00b201c4e459$08633c40$
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
Solution facile: utilisez un case pour chaque colonne:
Order by Case @OrderId when 1 then ColName else 0 end,
Case @OrderId when 2 then ColDate else 0 end,
Case @OrderId when 3 then ColSize else 0 end
Vous pouvez également choisir de tout forger (caster) vers des chaînes de
caractère.
S. L.
"Etienne" <anonymous@discussions.microsoft.com> wrote in message
news:00b201c4e459$08633c40$3501280a@phx.gbl...
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
Solution facile: utilisez un case pour chaque colonne:
Order by Case @OrderId when 1 then ColName else 0 end,
Case @OrderId when 2 then ColDate else 0 end,
Case @OrderId when 3 then ColSize else 0 end
Vous pouvez également choisir de tout forger (caster) vers des chaînes de
caractère.
S. L.
"Etienne" wrote in message
news:00b201c4e459$08633c40$
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
-----Message d'origine-----
Solution facile: utilisez un case pour chaque colonne:
Order by Case @OrderId when 1 then ColName else 0 end,
Case @OrderId when 2 then ColDate else 0 end,
Case @OrderId when 3 then ColSize else 0 end
Vous pouvez également choisir de tout forger (caster)
caractère.
S. L.
"Etienne" wrote in
news:00b201c4e459$08633c40$
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
-----Message d'origine-----
Solution facile: utilisez un case pour chaque colonne:
Order by Case @OrderId when 1 then ColName else 0 end,
Case @OrderId when 2 then ColDate else 0 end,
Case @OrderId when 3 then ColSize else 0 end
Vous pouvez également choisir de tout forger (caster)
caractère.
S. L.
"Etienne" <anonymous@discussions.microsoft.com> wrote in
news:00b201c4e459$08633c40$3501280a@phx.gbl...
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
-----Message d'origine-----
Solution facile: utilisez un case pour chaque colonne:
Order by Case @OrderId when 1 then ColName else 0 end,
Case @OrderId when 2 then ColDate else 0 end,
Case @OrderId when 3 then ColSize else 0 end
Vous pouvez également choisir de tout forger (caster)
caractère.
S. L.
"Etienne" wrote in
news:00b201c4e459$08633c40$
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
-----Message d'origine-----
Solution facile: utilisez un case pour chaque colonne:
Order by Case @OrderId when 1 then ColName else 0 end,
Case @OrderId when 2 then ColDate else 0 end,
Case @OrderId when 3 then ColSize else 0 end
Vous pouvez également choisir de tout forger (caster)
caractère.
S. L.
"Etienne" wrote in
news:00b201c4e459$08633c40$
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
-----Message d'origine-----
Solution facile: utilisez un case pour chaque colonne:
Order by Case @OrderId when 1 then ColName else 0 end,
Case @OrderId when 2 then ColDate else 0 end,
Case @OrderId when 3 then ColSize else 0 end
Vous pouvez également choisir de tout forger (caster)
caractère.
S. L.
"Etienne" <anonymous@discussions.microsoft.com> wrote in
news:00b201c4e459$08633c40$3501280a@phx.gbl...
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
-----Message d'origine-----
Solution facile: utilisez un case pour chaque colonne:
Order by Case @OrderId when 1 then ColName else 0 end,
Case @OrderId when 2 then ColDate else 0 end,
Case @OrderId when 3 then ColSize else 0 end
Vous pouvez également choisir de tout forger (caster)
caractère.
S. L.
"Etienne" wrote in
news:00b201c4e459$08633c40$
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne choisie.
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête ne
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
-----Message d'origine-----
Cette méthode est bonne mais évidemment, il faut
pour les types de donnée autres que numérique, comme par
strings ou encore la valeur null. De plus, la valeur
vraiment d'importance, il suffit qu'elle soit la même
rangées, de ne façon à ne pas influencer l'ordre de tri
pas.
Personnellement, j'utilise la syntaxe suivante pour le
devrait rien changer:
.... Case When @CheckTriLigue = -1 Then L.Nom Else Null
Pour la conversion sous la forme de nvarchar, il faut
pour avoir "02" au lieu de "2".
S. L.
"Etienne" wrote in
news:086501c4e625$4d5d8710$
J'ai essayé cette méthode et j'obtiens la même erreur que
pour de la méthode de mon post. Ais-je oublié quelque
chose ? pouvez vous me confirmez que cette méthode est
viable ?
Le cast en nvarchar de chaque champ fonctionne mais c'est
pas optimum puisque '11' est trié avant '2' par exemple.-----Message d'origine-----
Solution facile: utilisez un case pour chaque colonne:
Order by Case @OrderId when 1 then ColName else 0 end,
Case @OrderId when 2 then ColDate else 0 end,
Case @OrderId when 3 then ColSize else 0 end
Vous pouvez également choisir de tout forger (caster)
vers des chaînes decaractère.
S. L.
"Etienne" wrote in
messagenews:00b201c4e459$08633c40$
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
.
-----Message d'origine-----
Cette méthode est bonne mais évidemment, il faut
pour les types de donnée autres que numérique, comme par
strings ou encore la valeur null. De plus, la valeur
vraiment d'importance, il suffit qu'elle soit la même
rangées, de ne façon à ne pas influencer l'ordre de tri
pas.
Personnellement, j'utilise la syntaxe suivante pour le
devrait rien changer:
.... Case When @CheckTriLigue = -1 Then L.Nom Else Null
Pour la conversion sous la forme de nvarchar, il faut
pour avoir "02" au lieu de "2".
S. L.
"Etienne" <anonymous@discussions.microsoft.com> wrote in
news:086501c4e625$4d5d8710$a501280a@phx.gbl...
J'ai essayé cette méthode et j'obtiens la même erreur que
pour de la méthode de mon post. Ais-je oublié quelque
chose ? pouvez vous me confirmez que cette méthode est
viable ?
Le cast en nvarchar de chaque champ fonctionne mais c'est
pas optimum puisque '11' est trié avant '2' par exemple.
-----Message d'origine-----
Solution facile: utilisez un case pour chaque colonne:
Order by Case @OrderId when 1 then ColName else 0 end,
Case @OrderId when 2 then ColDate else 0 end,
Case @OrderId when 3 then ColSize else 0 end
Vous pouvez également choisir de tout forger (caster)
vers des chaînes de
caractère.
S. L.
"Etienne" <anonymous@discussions.microsoft.com> wrote in
message
news:00b201c4e459$08633c40$3501280a@phx.gbl...
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
.
-----Message d'origine-----
Cette méthode est bonne mais évidemment, il faut
pour les types de donnée autres que numérique, comme par
strings ou encore la valeur null. De plus, la valeur
vraiment d'importance, il suffit qu'elle soit la même
rangées, de ne façon à ne pas influencer l'ordre de tri
pas.
Personnellement, j'utilise la syntaxe suivante pour le
devrait rien changer:
.... Case When @CheckTriLigue = -1 Then L.Nom Else Null
Pour la conversion sous la forme de nvarchar, il faut
pour avoir "02" au lieu de "2".
S. L.
"Etienne" wrote in
news:086501c4e625$4d5d8710$
J'ai essayé cette méthode et j'obtiens la même erreur que
pour de la méthode de mon post. Ais-je oublié quelque
chose ? pouvez vous me confirmez que cette méthode est
viable ?
Le cast en nvarchar de chaque champ fonctionne mais c'est
pas optimum puisque '11' est trié avant '2' par exemple.-----Message d'origine-----
Solution facile: utilisez un case pour chaque colonne:
Order by Case @OrderId when 1 then ColName else 0 end,
Case @OrderId when 2 then ColDate else 0 end,
Case @OrderId when 3 then ColSize else 0 end
Vous pouvez également choisir de tout forger (caster)
vers des chaînes decaractère.
S. L.
"Etienne" wrote in
messagenews:00b201c4e459$08633c40$
Bonjour,
j'ai un petit soucis avec le tri dans une requête. c'est
simple, j'ai un datagrid avec des colonnes date, texte,
entier. Je sélectionne la colonne à trier dans une liste
et j'exécute la requête en triant par la colonne
Mais vu que ma variable @OrderId (valeur de la liste)
correspond à une colonne de type différent, la requête
passe pas apparemment. Je fais :
select ColName, ColDate, ColSize from MaTable
Order by case @OrderId when 1 then ColName when 2 then
ColDate else ColSize end.
Ca SQL Server, il aime pas du tout !
Avez vous une idée svp. Merci.
.
.