[Résolu] CONCATENER renvoie Unexpected end of command in statement

Discussions sur le module de base de données Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
GOGUET Bruno
Fraîchement OOthentifié
Messages : 2
Inscription : 05 déc. 2022 15:07

[Résolu] CONCATENER renvoie Unexpected end of command in statement

Message par GOGUET Bruno »

Bonjour à tous,
Merci pour les conseils que vous prodiguez. Que sainte Patience prie pour tous les responsables du sites!
J'ai une table -t_1_m_fr- "table un mot français"qui comporte deux champs: une clef primaire nid_1_m_fr
"numéro identification un mot français et un autre desi_1_m_fr "désignation un mot français".
J'ai une deuxième table qui comprend trois champs: la clef primaire nid_2_m_fr"numéro identification deux mots français", le deuxième -nid_m_1_fr_r_m_1_fr "numéro identification mot un français requête mot un français" et enfin le dernier nid_m_2_fr_r_m_1_fr. Ces deux requêtes comportent chacune deux champ alias respectifs nid_m_1_fr, nid_m_2_fr, et desi_m_1_fr et desi_m_2_fr Vous avez compris que je crée deux mot français à partir de mot un et mot deux français.
J'ai écrit la requête SQL suivante (inspirée de SQL.sh) qui m'indique le code suivant.
SELECT id, CONCAT(colonne1, colonne2)
FROM `table
j'adapte avec:
SELECT nid_2_m_fr, CONCAT (desi_m_1_fr," ",desi_m_2_fr"
FROM t_2_m_fr,r_m_1_fr,r_m_2_fr
J'obtiens : 1: Unexpected end of command in statement [SELECT nid_2_m_fr, CONCAT (desi_m_1_fr," ",desi_m_2_fr"]. Qu'est-ce que cela veut dire et comment corriger l'erreur?
Merci d'avance pour votre aide. Bruno
OpenOffice 7.4 Windows 10
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 10071
Inscription : 28 août 2010 08:45

Re: CONCATENER

Message par micmac »

Bonjour et bienvenue,
Image
Comment joindre un fichier au format ODF
Veillez également à dépersonnaliser votre fichier.
Donnez un nom clair à ce fichier. Evitez "essai" et autres "test" dont nos tiroirs débordent...
.
Le titre résumant de votre question < CONCATENER > n'est pas assez explicite, il a été complété afin qu'il reflète la question.
Touche Ctrl de Windows = touche cmd⌘ sur Mac
OpenOffice > Outils > Options sur Windows = OpenOffice > Préférences sur macOS
Avatar de l’utilisateur
DLE
HédOOniste
HédOOniste
Messages : 1516
Inscription : 30 déc. 2007 18:56
Localisation : Lille

Re: CONCATENER renvoie Unexpected end of command in statement

Message par DLE »

Bonsoir,
En attendant d'avoir la base essayer ceci

Code : Tout sélectionner

SELECT ""nid_2_m_fr"", CONCAT (""desi_m_1_fr"", ""desi_m_2_fr"")
FROM ""t_2_m_fr"" , ""r_m_1_fr,r_m_2_fr""
MacOS Tahoe 26.3.1 (iMac-M4) : AOO 4.1.16 , LibreOffice 25.8.6.2, Adoptium-temurinJDK 1.8.0_402, CCC, FireFox, Thunderbird, ORB 1.2.1
Parallels Desktop = Windows 11 & MacOS : AOO, Libre Office.
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 17219
Inscription : 03 mars 2006 16:02
Localisation : Venise verte

Re: CONCATENER renvoie Unexpected end of command in statement

Message par jeanmimi »

Bonjour,
GOGUET Bruno a écrit : 12 févr. 2023 15:10 J'ai écrit la requête SQL suivante (inspirée de SQL.sh) qui m'indique le code suivant.

Code : Tout sélectionner

SELECT id, CONCAT(colonne1, colonne2) FROM `table
j'adapte avec:

Code : Tout sélectionner

SELECT nid_2_m_fr, CONCAT (desi_m_1_fr," ",desi_m_2_fr" FROM t_2_m_fr,r_m_1_fr,r_m_2_fr
Dans l'adaptation, il manque déjà une parenthèse fermante et apparemment le nom de la deuxième Table qui s'appelle, je présume t_2_m_fr puisque la première s'appelle t_1_m_fr
Ensuite, la commande CONCAT ne concatène que deux champs, comme dans l'exemple donné par DLE, pas trois. Donc si on veut mettre un espace entre les deux champs, je suggère d'utiliser plutôt le double pipe que CONCAT :

Code : Tout sélectionner

SELECT "nid_2_m_fr","desi_m_1_fr"|| ' '|| "desi_m_2_fr"FROM "t_2_m_fr", "t_1_m_fr"
Tu as un exemple récent dans ce fil :
viewtopic.php?p=369194#p369194
Dernière modification par jeanmimi le 12 févr. 2023 19:19, modifié 2 fois.
LibreOffice : Version : 25.8.4 (x64)(23 février 2026)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Avatar de l’utilisateur
DLE
HédOOniste
HédOOniste
Messages : 1516
Inscription : 30 déc. 2007 18:56
Localisation : Lille

Re: CONCATENER renvoie Unexpected end of command in statement

Message par DLE »

:oops: bien vu jeanmimifallait pas doubler les double-quotes
A+
MacOS Tahoe 26.3.1 (iMac-M4) : AOO 4.1.16 , LibreOffice 25.8.6.2, Adoptium-temurinJDK 1.8.0_402, CCC, FireFox, Thunderbird, ORB 1.2.1
Parallels Desktop = Windows 11 & MacOS : AOO, Libre Office.
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 17219
Inscription : 03 mars 2006 16:02
Localisation : Venise verte

Re: CONCATENER renvoie Unexpected end of command in statement

Message par jeanmimi »

Les doubles quotes deviennent nécessaires si la requête est incluse dans une Macro, donc tu avais anticipé cette éventuelle demande.
LibreOffice : Version : 25.8.4 (x64)(23 février 2026)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
GOGUET Bruno
Fraîchement OOthentifié
Messages : 2
Inscription : 05 déc. 2022 15:07

Re: CONCATENER renvoie Unexpected end of command in statement

Message par GOGUET Bruno »

Merci à tous les contributeurs, c’est vraiment sympa. La requête ne fonctionne toujours pas, mais j’ai des pistes pour essayer de me dépatouiller. Si le résultat est bon, je mettrai résolu, sinon, je devrais encore faire appel à vous. Merci encore.
OpenOffice 7.4 Windows 10
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 17219
Inscription : 03 mars 2006 16:02
Localisation : Venise verte

Re: CONCATENER renvoie Unexpected end of command in statement

Message par jeanmimi »

GOGUET Bruno a écrit : 13 févr. 2023 09:28 La requête ne fonctionne toujours pas
Dans ce cas-là, il faut appliquer la suggestion de micmac un peu plus haut dans ce fil de messages.
LibreOffice : Version : 25.8.4 (x64)(23 février 2026)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
pulcinopio
Membre prOOscrit
Messages : 243
Inscription : 13 juil. 2022 17:13

Re: CONCATENER renvoie Unexpected end of command in statement

Message par pulcinopio »

Messieurs,

Obnubilé par ce fil, dont la téléologie m'échappe, j'en reste abasourdi:

Le Grand Maître a posté:
Les doubles quotes deviennent nécessaires si la requête est incluse dans une Macro, donc tu avais anticipé cette éventuelle demande.
Mon cher Maître, permettez-moi une question, c.à.d. d'aprés mon expérience, les caractères spéciaux (||,&..%) me porteraient-il à formuler des scripts que je ne pourrais pas obtenir autrement (à savoir par la routine guidée)?

Veuillez pardonner mon ignorance

Bien à vous

pulcinopio
Libre Office 6.0.4 sur Ubuntu 18.04
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 17219
Inscription : 03 mars 2006 16:02
Localisation : Venise verte

Re: CONCATENER renvoie Unexpected end of command in statement

Message par jeanmimi »

pulcinopio a écrit : 13 févr. 2023 11:40 les caractères spéciaux (||,&..%) me porteraient-ils à formuler des scripts que je ne pourrais pas obtenir autrement
Oui.
Pour les doubles quotes dans une Macro pour encadrer les noms des champs de la Table, il y a un exemple récent ici :
viewtopic.php?p=369331#p369331
Quant au double pipe, || il réalise une opération logique comme CONCAT. Il a l'avantage d'être accepté aussi bien par le langage HSQLDB de Base que par le SQL de Firebird (implanté dans Base à titre expérimental).
L'esperluette & va associer aussi deux champs dans les Macros, comme dans la Macro ici :
viewtopic.php?p=221526#p221526
et aussi dans Calc :
viewtopic.php?t=65912&hilit=Calc+concat%C3%A9ner+%26#
LibreOffice : Version : 25.8.4 (x64)(23 février 2026)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
pulcinopio
Membre prOOscrit
Messages : 243
Inscription : 13 juil. 2022 17:13

Re: CONCATENER renvoie Unexpected end of command in statement

Message par pulcinopio »

Merci bien.
Libre Office 6.0.4 sur Ubuntu 18.04
Avatar de l’utilisateur
Bidouille
RespOOnsable forum
RespOOnsable forum
Messages : 12838
Inscription : 08 nov. 2005 16:23
Localisation : Brest, France

Re: CONCATENER renvoie Unexpected end of command in statement

Message par Bidouille »

Dernière visite : 27 févr. 2023 16:00
Aucun fichier fourni et aucune nouvelle depuis plus d'un mois malgré plusieurs visites.
Je classe HS.

La prochaine fois, inutile de poster si c'est pour n'y donner aucune suite.