Comment utiliser : Formule Excel vers SQL
- Collez une formule Excel ou Google Sheets, ou choisissez-en une dans Exemples.
- Choisissez le langage cible : la page démarre en SQL, et vous pouvez changer à tout moment.
- Renommez les références de cellules détectées par des noms de variables explicites, par exemple
B2→price. - Choisissez une fonction complète ou l'expression seule, puis copiez ou téléchargez le code. Les fonctions auxiliaires sont ajoutées automatiquement lorsqu'une formule en a besoin.
Des formules de tableur au SQL
Quand un rapport dépasse les capacités d'Excel, ses formules finissent généralement en SQL : colonnes calculées dans un SELECT, totaux conditionnels dans une requête de tableau de bord ou vue dans l'entrepôt de données. Le SQL raisonne en colonnes et en lignes plutôt qu'en cellules, donc ce convertisseur traite chaque référence de cellule comme une colonne de la ligne courante et chaque plage comme une colonne à agréger.
=SUMIFS(D2:D100, B2:B100, "North", C2:C100, ">=1000")
SELECT
SUM(CASE WHEN col_b = 'North' AND col_c >= 1000 THEN col_d ELSE 0 END) AS result
FROM my_table;
Remplacez les références par les noms réels de vos colonnes — B2:B100 → region — et la requête est prête à être exécutée.
Correspondance des fonctions Excel en SQL
| Excel | SQL |
|---|---|
IF(c, a, b) | CASE WHEN c THEN a ELSE b END |
IFS / SWITCH | CASE WHEN … END |
AND, OR, NOT | AND, OR, NOT |
= and <> | = and <> |
a & b | CONCAT(a, b) |
a ^ b | POWER(a, b) |
SUM(A2:A10) | SUM(col_a) |
ROUND(x, 2) | ROUND(x, 2) |
MOD(a, b) | MOD(a, b) — sign differs |
SUMIFS / COUNTIF… | SUM(CASE WHEN … THEN … END) |
VLOOKUP / XLOOKUP | not translated — use a JOIN |
IFERROR(x, y) | COALESCE(x, y) (NULL only) |
LEFT / MID / LEN | LEFT, SUBSTRING, CHAR_LENGTH |
TODAY() / NOW() | CURRENT_DATE, CURRENT_TIMESTAMP |
Les critères deviennent des prédicats
Les chaînes de critères Excel sont converties en conditions SQL : ">=1000" devient col >= 1000, "<>closed" devient col <> 'closed', et les jokers deviennent des motifs LIKE : "*@example.com" donne LIKE '%@example.com'. Cela fonctionne pour SUMIF, SUMIFS, COUNTIF, COUNTIFS, AVERAGEIF et AVERAGEIFS.
Différences entre dialectes
| Excel | MySQL | PostgreSQL | SQL Server |
|---|---|---|---|
LEN | CHAR_LENGTH | LENGTH | LEN |
FIND | LOCATE | POSITION … IN | CHARINDEX |
REPLACE | INSERT | OVERLAY | STUFF |
DATE(y, m, d) | STR_TO_DATE(CONCAT…) | MAKE_DATE | DATEFROMPARTS |
YEAR(d) | YEAR(d) | EXTRACT(YEAR FROM d) | YEAR(d) |
TODAY() | CURRENT_DATE | CURRENT_DATE | CAST(GETDATE() AS DATE) |
Ce qui n'est pas traduit
Les recherches (VLOOKUP, XLOOKUP, INDEX/MATCH) sont des jointures en SQL : elles sont signalées plutôt que devinées. IFERROR devient COALESCE, qui ne remplace que les NULL : encadrez les diviseurs avec NULLIF(x, 0) pour éviter les erreurs de division. PostgreSQL et SQL Server divisent les entiers en entiers, donc convertissez l'un des opérandes en DECIMAL si nécessaire.
Fonctions prises en charge : IF, IFS, SWITCH, AND, OR, NOT, XOR, IFERROR, IFNA, ISBLANK, ISNUMBER, ISTEXT, SUM, AVERAGE, MIN, MAX, COUNT, COUNTA, COUNTBLANK, PRODUCT, MEDIAN, ROUND, ROUNDUP, ROUNDDOWN, INT, TRUNC, ABS, SIGN, MOD, POWER, SQRT, EXP, LN, LOG, LOG10, PI, CEILING, FLOOR, RAND, RANDBETWEEN, SUMIF, SUMIFS, COUNTIF, COUNTIFS, AVERAGEIF, AVERAGEIFS, SUMPRODUCT, VLOOKUP, XLOOKUP, MATCH, INDEX, CONCAT, CONCATENATE, TEXTJOIN, LEFT, RIGHT, MID, LEN, UPPER, LOWER, PROPER, TRIM, SUBSTITUTE, REPLACE, FIND, SEARCH, REPT, VALUE, EXACT, TEXT (formats de nombres), TODAY, NOW, DATE, YEAR, MONTH, DAY (recherches exclues). Chargez d'abord la feuille dans une table avec CSV & Excel vers SQL, puis mettez la requête en forme avec le SQL Formatter.
Aussi recherché comme : formule excel en sql, convertir formule excel sql, excel si en sql case when, sumifs en sql, countif en sql, formule excel vers mysql, excel vers requête sql, formule excel vers postgresql.
Outils complémentaires : Formule Excel vers SQL
- Formule Excel vers Python — Collez une formule Excel ou Google Sheets et obtenez une fonction Python aux noms de variables clairs, avec les imports adéquats et les fonctions auxiliaires pour SUMIFS, VLOOKUP et l'arrondi à la façon d'Excel.
- Formule Excel vers JavaScript — Collez une formule de tableur et obtenez du JavaScript lisible : une fonction avec des paramètres nommés, une priorité des opérateurs respectée et de petites fonctions d'aide pour ce qui manque à JavaScript, comme SUMIFS et VLOOKUP.
- Générateur CREATE TABLE — Concevez une table colonne par colonne (types, clé primaire, NOT NULL, UNIQUE, auto-incrément et valeurs par défaut) et obtenez la syntaxe CREATE TABLE adaptée à votre base de données.
- Excel vers JSON — Ouvrez un classeur .xlsx ou collez directement des cellules depuis Excel ou Google Sheets pour obtenir un JSON propre.
Questions fréquentes
Comment écrire une condition IF d'Excel en SQL ?
CASE WHEN condition THEN valeur ELSE autre END. Les IF imbriqués et IFS deviennent un seul CASE avec plusieurs branches WHEN, ce que ce convertisseur produit automatiquement.Quel est l'équivalent SQL de SUMIFS ?
SUM(CASE WHEN region = 'North' AND total >= 1000 THEN amount ELSE 0 END). Pour une seule condition, vous pouvez aussi utiliser WHERE avec un SUM simple.Comment faire un VLOOKUP en SQL ?
SELECT o.*, p.price FROM orders o LEFT JOIN products p ON p.sku = o.sku. Un LEFT JOIN renvoie NULL lorsqu'aucune correspondance n'existe, comme IFERROR(VLOOKUP(…), "").