2009-03-27 12 views
27

Vorrei eseguire una query che restituisce la prima parola solo da un campo particolare, questo campo ha più parole separate da spazi, presumo che potrebbe essere necessario eseguire alcune espressioni regolari per realizzare questo? So come farlo usando alcuni modi in PHP, ma questo sarebbe meglio farlo sul lato del database. Qualche idea molto apprezzata. Grazie.query MySQL per estrarre la prima parola da un campo

risposta

17

Qui si va :)

SELECT SUBSTRING_INDEX(`field` , ' ', 1) AS `field_first_word` 
FROM `your_table` 
2
SELECT 
    SUBSTR(field_name, 1, LOCATE(' ', field_name)) AS first_word 
FROM 
    table 
+0

È necessario aggiungere un -1 o si ottiene uno spazio aggiuntivo. –

2
select 
    substring(test_field, 1, instr(test_field, ' ')) 
from 
    test_table 
Problemi correlati