SQL - Fusion de 2 requètes :(

hbhh -  
 Maxidoudou -
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
Configuration: Windows XP
Firefox 3.5.6

8 réponses

  1. moiced59 Messages postés 1161 Statut Membre 60
     
    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
  2. hbhh
     
    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
  3. moiced59 Messages postés 1161 Statut Membre 60
     
    tu travail sous quoi?access?

    peut tu me decrire t tables champ ...

    ce que tu recherche
    0
  4. hbhh
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. moiced59 Messages postés 1161 Statut Membre 60
     
    deriere ton from c le nom de la table qu il te faut !!!!!
    0
  7. hbhh
     
    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
  8. moiced59 Messages postés 1161 Statut Membre 60
     
    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
  9. Maxidoudou
     
    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