Bien utiliser le SQLRappelDans OOoBase, vous pouvez faire :
- des requêtes de type SELECT dans la section requête en vue SQL
- tous types de requêtes dans Outils / SQL ...
Exemples de requêtes1. Total d'un champ pour l'année en cours
- Code : Tout sélectionner AgrandirRéduire
SELECT SUM("TVA196") AS "Total" FROM "TFactures" WHERE YEAR("DateEmission") = YEAR(NOW( ))
Note : MONTH("DateEmission") = MONTH(NOW( )) pour le mois en cours
2. Total d'un champ entre 2 dates particulières
- Code : Tout sélectionner AgrandirRéduire
SELECT SUM("TVA196") AS "Total" FROM "TFactures" WHERE "DateEmission" >= '2006-01-01' AND "DateEmission" < '2006-04-01'
Note : format de date aaaa-mm-jj (ou yyyy-mm-dd)
3. Le montant total, le nombre et le taux moyen des factures par client, avec concaténation des champs Nom et Prénom... les données proviennent de 2 tables liées par RefClient
- Code : Tout sélectionner AgrandirRéduire
SELECT CONCAT("TClients"."Nom" || ' ' || "TClients"."Prenom") AS "Nom & Prénom", SUM("TFactures"."Montant") AS "Total", COUNT("TFactures"."Montant") AS "Nombre", AVG("TFactures"."Montant") AS "Moyenne" FROM "TFactures", "TClients" WHERE ("TFactures"."RefClient" = "TClients"."RefClient") GROUP BY "TFactures"."RefClient" ORDER BY "Nom & Prénom" ASC
Note : ce type de concaténation est mieux accepté
- Code : Tout sélectionner AgrandirRéduire
CONCAT("TClients"."Nom", CONCAT(' ', "TClients"."Prenom")) AS "Nom & Prénom"
4. Mise à jour d'une table avec mise en majuscule du Nom
- Code : Tout sélectionner AgrandirRéduire
UPDATE "TClients" SET "RaisonSociale" = 'Les Arts d''Aujourd''hui', "Nom" = UCASE('debrier') WHERE "RefClient"=12
5. Sélection sur un champ booléen
- Code : Tout sélectionner AgrandirRéduire
SELECT "Titre" FROM "TLivres" WHERE "Nouvelle" = True
6. Insertion d'un enregistrement dans une table
- Code : Tout sélectionner AgrandirRéduire
INSERT INTO "TLivres" ("Titre", "RefAuteur", "Nouvelle") Values ('Les jeux de l''esprit', 12, False)
Requêtes par macroshttps://forum.openoffice.org/fr/forum/ftopic1454.htmlcris59
PS : ces requêtes ont été testée, mais elles peuvent, peut-être, être améliorées ...