SQL - Fusion de 2 requètes :(

Fermé
hbhh - 30 déc. 2009 à 12:01
 Maxidoudou - 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
A voir également:

8 réponses

moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
30 déc. 2009 à 12:06
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!!!!!!!
0
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
0
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
30 déc. 2009 à 12:20
tu travail sous quoi?access?

peut tu me decrire t tables champ ...

ce que tu recherche
0
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
30 déc. 2009 à 12:30
deriere ton from c le nom de la table qu il te faut !!!!!
0
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???
0
moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
30 déc. 2009 à 15:25
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.....)
0
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.
0