CommentCaMarche
Recherche
Posez votre question Signaler

SQL - Fusion de 2 requètes :(

hbhh - Dernière réponse le 27 août 2012 à 09:13
Bonjour,
J'aimerais fusionner ces 2 requètes:
select convert(varchar(10),Date,103) AS Date
from vignette
WHERE truc=1 and machin=0 
group by convert(varchar(10),Date,103)
ORDER BY convert(varchar(10),Date,103)

et
select count(*) as NBRE
from (
select id
from vignette
where truc=1 and machin=0 AND convert(varchar(10),Date,103)='REQUETE_DU_HAUT'
group by id) T

En fait j'aimerais mettre la 1ère requète dans le where de la 2ème requète.
Merci d'avance
Lire la suite 
Réponse
+0
moins plus
select count(*) as NBRE
from vignette
where truc=1 and machin=0 AND convert(varchar(10),Date,103)=(select convert(varchar(10),Date,103) AS Date
from vignette
WHERE truc=1 and machin=0
group by convert(varchar(10),Date,103)
ORDER BY convert(varchar(10),Date,103))

group by id) T

ce qui m'embete c le select id apres ton from!!!!!!!
Ajouter un commentaire
Réponse
+0
moins plus
Oui il m'embète aussi!!
ça ne fonctionne pas.
En fait ce que j'aimerais faire, c'est un tableau avec DATE et NBRE
:S
Ajouter un commentaire
Réponse
+0
moins plus
tu travail sous quoi?access?

peut tu me decrire t tables champ ...

ce que tu recherche
Ajouter un commentaire
Réponse
+0
moins plus
Merci pour ta réponse..

Je travaille en VB.NET, sous SQL SERVER.

Je cherche à avoir un tableau avec 2 colonnes:
DATE et NBRE
Câd ça :
select count(*) as NBRE
from (
select id
from vignette
where truc=1 and machin=0
group by id) T

qui retourne le nombre,
en fonction de leur date d'insertion

Par ex:

DATE NBRE
02/12/2009 5
04/12/2009 1
07/12/2009 17
Ajouter un commentaire
Réponse
+0
moins plus
deriere ton from c le nom de la table qu il te faut !!!!!
Ajouter un commentaire
Réponse
+0
moins plus
ben non je ne peux pas .
c'est cette requète qui me donne le nombre exacte:
select count(*) as NBRE
from (
select id
from vignette
where truc=1 and machin=0
group by id) T


ou Sinon il faut que je puisse passer à cette requete la date en plus
select count(*) as NBRE, convert(varchar(10),Date,103)
from (
select id
from vignette
where truc=1 and machin=0
group by id) T


Mais du coup la rqt ne reconnait pas le "convert(varchar(10),Date,103)"

quelqu'un a-t-il une idée???
Ajouter un commentaire
Réponse
+0
moins plus
mais ca ne peux pas marcher ta requete impossible!!!

select tes_champ ou champ_calculé from ta_table ca ta pas le choix!!!!!

tu ne peux pas faire un from(select.....)
Ajouter un commentaire
Réponse
+0
moins plus
C'est en fait très simple un select * from matable corresponds en réalité à
select * from (select * from matable) matable. Toute table dans le from est elle meme une requete. donc ?

select matable1.id, matable1.nom from matable1,(select matable2.id from matable2 where madate est comprise entre machin et bidul) matablevirtuelle
where matable1.madate=matablevirtuelle.madate

Et roule ma poule ! Un des très gros avantage par rapport à une jointure complexe, c'est que la requete est effectuée 1 fois et après ses enregistrement sont traité, alors qu'avec une jointure du genre "madate in (select...", ou autre, il y a autant de requête que de ligne de résultat.
Ajouter un commentaire
Ce document intitulé «  SQL - Fusion de 2 requètes :(  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.