J'obtenu la requête suivante:Comment joindre deux chaînes dans une requête SELECT?
SELECT
IF(e.business_id IS NOT NULL, b.name, SUBSTRING_INDEX(p.names, ' ', 1)) as name,
f.code,
f.total,
f.date
FROM business AS b INNER JOIN entity AS e ON b.id = e.business_id
INNER JOIN persons AS p ON e.person_id = p.id
INNER JOIN transactions AS t ON e.id = t.entity_id
INNER JOIN bills AS bi ON t.id = bi.transaction_id
WHERE e.type = 2 AND t.type_id = 1;
Si business_id
à entity
table est nul, je dois rejoindre un nom et un nom de famille de la personne. Je stocke dans un champ appelé names
le nom de la personne - par ex. Steven Paul - et dans un champ appelé surnames
le nom de famille des personnes - par ex. Jobs Jobs.
Jusqu'ici j'ai obtenu le nom avec SUBSTRING_INDEX(p.names, ' ', 1)
mais comment joignent cette chaîne à SUBSTRING_INDEX(p.surnames, ' ', 1)
séparés par un espace?
Avez-vous essayé de lire sur les [Fonctions de chaîne MySQL] (http://dev.mysql.com/doc/refman/5.7/en/string-functions.html)? –
pour joindre deux chaînes vous devez utiliser CONCAT ou CONTACT_WS, comme select CONCAT (tbl.firstname, "", tbl.lastname) comme nom complet de la table; –
salut là-bas, en passant par certaines de mes anciennes réponses. Avez-vous réussi à trier celui-ci? – e4c5