2010-07-28 5 views
2

Мне нужно обновить один столбец из моей таблицы пользователя. Текущая запись в User TableMysql Обновление записей

**id , user_name** 
1 , sachin rathore 
2 , dilip CHOUHAN 
3 , GariMA JAIN 

Я хочу обновить user_name колонку, как этот

1 , Sachin Rathore 
2 , Dilip Chouhan 
3 , Garima Jain 

столбце Пользователь должен быть в titlize форме означает, что первая буква каждого слова должна быть капиталом и остаются строчная

+0

Возможный дубликат [MySQL - Заглавная буква первого слова для каждого слова, в существующем ta BLE] (http://stackoverflow.com/questions/3278207/mysql-capitalize-first-letter-of-each-word-in-existing-table) –

ответ

2

Вот запрос, который будет делать это

UPDATE SET table SET user_name= CAP_FIRST(CONCAT(SUBSTRING_INDEX(user_name, ' ',-1), ' ', SUBSTRING_INDEX(user_name, ' ',1))) 

Он опирается на обычай построен функции прописными буквами каждую первую букву, а именно CAP_FIRST, а здесь: http://joezack.com/index.php/2008/10/20/mysql-capitalize-function/

Вот еще один: http://forums.mysql.com/read.php?20,265978,266040#msg-266040

1

Это не функция построения, которая может преобразовывать текст таким образом. Вам нужно будет написать сценарий, который это сделает. Например, PHP имеет функцию ucwords(), которую вы можете использовать.

http://www.php.net/manual/en/function.ucwords.php

Смежные вопросы