| 
 
 |  |  | auteur : SQLpro |  | Un Full Outer est l'équivalent de :
 
 | Select...From T1LeftOuterJoinT2On...UnionSelect...From T2LeftOuterJoinT1On...
 | 
 | 
|  |  | auteur : Lucifer |  | Lorsque nous avons une expression comme celle-ci :
 où [B] est susceptible de prendre pour valeur 0, alors nous pouvons utiliser ceci :
 | 
|  |  | auteur : Philou22 |  | Pour passer des paramètres à une requête, il y a bien sûr les Paramètres de la requête, voire des variables définies en VB, mais il existe aussi une solution simple :Une table ne contenant qu'un seul enregistrement.
 Cet enregistrement peut bien sûr contenir beaucoup de champs tels que TxTVA1, TxTVA2, Date_fin_periode etc....
 
 On insère la table dans la requête nécessitant les paramètres et on se sert des champs comme critères ou constantes. 
Attention :
 
Garantir un seul enregistrement (il y a un post la-dessus sur ce site) sinon gare aux petits lapins comme on dit chez nous (multiplication des enregistrements)Ne marche pas si on a des jointures externes dans la requête (c.a.d des flèches sur les liens), mais il suffit souvent de décaler le pb en faisant une deuxième requête. 
On a avec cette solution la souplesse d'utilisation des tables ... et des possibilités quasi infinies puisqu'on peut facilement modifier les paramètres via des requête appropriées. 
 | 
|  |  | auteur : Etienne Bar |  | Nous avons dans une table, un champ de type Date qui contient la date plus l'heure, ex : 12/05/2004 19:45:20.Voici la requête permettant de connaître toutes les lignes d'une table dont le champ date correspond à la date du jour :
 
 | Select*From LATABLE Whereint( LADATE )=Date()
 | 
La fonction int() permet de ne sélectionner seulement la date et non la date suivie de l'heure.
 
 | 
|  |  | auteur : bigquick |  | Ce code va permettre de récupérer le temps d'exécution de la requête en prenant le moment avant exécution puis en réalisant la différence à la fin de l'exécution | SubTpsRequete()DimsngDebutAsSingle
    sngDebut=VBA.DateTime.TimerDoCmd.RunSQLCurrentDb.QueryDefs("MaRequete").SQLMsgBox"Temps d'executiuon : "&Str(VBA.DateTime.Timer-sngDebut)&" secondes"EndSub
 | 
 | 
|  |  | auteur : MashiMaro |  | ATTENTION : L'utilisation des tables système (MSYSxxxxxxx) n'est pas recommandé. L'utilisation de telles procédures se fait à vos risques et péril. | SELECTA.nameASRequete, B.name1ASLst_Table
FROM MSysObjectsASA INNERJOINMSysQueriesASBONA.id=B.objectidWHERE A.type=5andB.attribute=5;
 | 
MSysObjects est la table qui contient tous les objets qui existent dans ta base.Dans cette base, type=5 permet d'identifier les Requêtes
 
 MSysQueries est la table qui contient tout le détail des requêtes qui existent dans ta base.Dans cette base, attribute=5 permet de définir (par rapport à l'id) ce qui est contenu dans le FROM (table ou requête).
 D'autres valeur d'attribute vous permet de savoir si vous êtes dans le SELECT le WHERE ou l'ORDER BY.
 
 Pour visualiser ces tables, il faut aller dans le menu Outils->Options... l'onglet affichage et cocher Objets Systeme. 
 | 
|  |  | auteur : Maxence HUBICHE |  | 
Première solution en agissant sur la table :
 
 
Onglet donnéesSource contrôle : ton champ
 Origine source : Liste valeurs
 Contenu : -1;oui;0;non
 Onglet Format
 Nbre colonnes : 2
 Largeurs Colonnes : 0
 
 
 
Seconde solution en agissant sur la requête :
 
 
Il suffit dans le Select de la requête de mettre une condition sur l'affichage de la valeur du champ.
 | 
|  |  | auteur : mouuaahh |  | 
Les requêtes contenant des jointures peuvent être valides sous SQL SERVER et pas sous Access.Pour résoudre ce problème, il suffit de placer le nom des tables entre crochets. Sinon vérifiez la compatibilité des mots clés SQL.
 
 | 
|  |  | auteurs : Cafeine, Tofalu |  | Voici une petite fonction à intégrer dans votre SELECT pour enlever les occurences.
 
 | 
FunctionmyRTrim2(vChaineAsVariant, strSearchAsString)AsVariantIfNotIsNull(vChaine)ThenDoWhilevChaine Like"*"&strSearch
        vChaine=Left(vChaine,Len(vChaine)-Len(strSearch))LoopmyRTrim2=vChaineEndIfEndFunction
 | 
 | 
|  |  | auteur : francishop |  | Ce code permet d'incrémenter un champ d'une requete SQL : | SELECTTonChamp,
 
       (SELECTCOUNT(TonChamp)FROMtbl_ExempleASLaTable_Alias2WHERETonChamp<tbl_Exemple.TonChamp)+1ASClassementFROMtbl_ExempleORDERBYTonChamp;
 | 
Ceci permet de faire un clasement
 
 
| ChampNum | Champ | ChampIncrementer |  
| 1 | Test1 | 1 |  
| 5 | Test2 | 2 |  
| 3 | Test3 | 3 |  
| 2 | Test4 | 4 |  
| 4 | Test5 | 5 |  | 
 
 
						Consultez les autres F.A.Q's
					 
 Les sources présentés sur cette pages sont libre de droits,
			et vous pouvez les utiliser à votre convenance. Par contre cette page de présentation de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs.
			Copyright ©2004 
			Developpez LLC. Tout droits réservés Developpez LLC.
			Aucune reproduction, même partielle, ne peut être faite de ce site et de
			l'ensemble de son contenu : textes, documents et images sans l'autorisation
			expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans
			de prison et jusqu'à 300 000 E de dommages et intérets.
			Cette page est déposée à la SACD. |