SQL - Fusion de 2 requètes :(

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. 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
    1. 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
      1. tu travail sous quoi?access?

        peut tu me decrire t tables champ ...

        ce que tu recherche
        0
        1. 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
          1. deriere ton from c le nom de la table qu il te faut !!!!!
            0
            1. 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
              1. 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
                1. 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