Remplacer le plancher() par Int(). J'ai appris cela en cherchant dans les fichiers d'aide Access, dans ce cas, en tapant F1 dans le concepteur de requêtes, et en cherchant des "fonctions". Cela m'a amené à un sujet d'aide comparant les fonctions VBA et T-SQL.
Vous devriez probablement jeter un coup d'œil au Access database engine SQL Reference. Je ne trouve pas de bonne référence en ligne pour les fonctions prises en charge par les services d'expression Jet/ACE et Access. Pour une raison inconnue, l'aide d'Access n'a pas inclus d'expressions Jet/ACE depuis Jet 3.0 et cette ressource vieillie a finalement été supprimée de MSDN il y a un an ou deux :(
Gardez à l'esprit que le service d'expression Jet/ACE est utilisé outside Access prend en charge un sous-ensemble de fonctions beaucoup plus petit qui est possible en utilisant le service Expression Access lors de l'exécution de SQL dans Access 2007. De manière générale, les fonctions VBA5 (distinctes des méthodes) impliquent des types de données simples (distincts des tableaux par exemple). ou des objets) sont pris en charge en dehors de l'interface utilisateur Access, pour une liste approximative des noms de fonctions, voir la section «Utilisation du mode bac à sable avec Jet 4.0 Service Pack 3 et versions ultérieures» de this MSDN article
l'aide de VBE devrait être un point de départ.
Les fichiers d'aide ne sont pas parfaits, mais une petite recherche devrait vous apporter ce dont vous avez besoin.
Belle édition. Mais je souhaite vraiment que vous mettiez ce genre de suggestions dans les commentaires afin que je puisse les éditer dans le poste moi-même. –
Une autre option consiste à créer vos requêtes en tant que passthoughs. Ensuite, vous pouvez toujours utiliser vos fonctions sql. De même, si vous avez plusieurs jointures sur des tables volumineuses ou si vous pouvez réduire considérablement l'ensemble de données à l'extrémité sql, les passthrough peuvent augmenter considérablement vos performances. – Praesagus
Je ne vois aucune indication dans le message d'origine indiquant que le serveur est impliqué. Pour les jointures multiples, j'ai tendance à créer des vues sur le serveur pour les faire, puis à créer un lien vers la vue, plutôt que d'essayer de gérer des requêtes passthrough. En général, je n'aurais pas pris la peine de le faire à moins que je ne trouve que Jet gâchait en premier lieu. Jet est beaucoup plus efficace que beaucoup de gens le croient, il me semble. –