mysql蛇形轉駝峰 myssql資料庫表名轉駝峰

2021-10-18 23:50:31 字數 3005 閱讀 7213

1.資料庫的表名,字段命名一般用下劃線分隔,在程式設計時一般使用的是駝峰命名

2.myssql沒有initcap函式,以下寫法支援四個下劃線,可以自己擴充套件

說明:you_table_name 替換為需要轉駝峰的表名

you_table_schema 替換為table_schema

-- 變數賦值

select @tbl := 'you_table_name',@scha := 'you_table_schema';

-- 表名轉駝峰且首字母大寫

select concat(

-- _分割之後的第一段

upper(substr(substring_index(lower(t.table_name),'_',1),1,1)),

substr(substring_index(lower(t.table_name),'_',1),2),

-- _分割之後的第二段

substr(upper(t.table_name),length(substring_index(t.table_name,'_',1)) + 2,1),

substr(lower(t.table_name),length(substring_index(t.table_name,'_',1)) + 3,length(substring_index(t.table_name,'_',2)) - length(substring_index(t.table_name,'_',1))-2),

-- _分割之後的第三段

substr(upper(t.table_name),length(substring_index(t.table_name,'_',2)) + 2,1),

substr(lower(t.table_name),length(substring_index(t.table_name,'_',2)) + 3,length(substring_index(t.table_name,'_',3)) - length(substring_index(t.table_name,'_',2))-2),

-- _分割之後的第四段

substr(upper(t.table_name),length(substring_index(t.table_name,'_',3)) + 2,1),

substr(lower(t.table_name),length(substring_index(t.table_name,'_',3)) + 3,length(substring_index(t.table_name,'_',4)) - length(substring_index(t.table_name,'_',3))-2),

-- _分割之後的第五段

substr(upper(t.table_name),length(substring_index(t.table_name,'_',4)) + 2,1),

substr(lower(t.table_name),length(substring_index(t.table_name,'_',4)) + 3,length(substring_index(t.table_name,'_',5)) - length(substring_index(t.table_name,'_',4))-2)

from information_schema.`tables` t where t.table_schema = @scha and t.table_name = @tbl;

-- 表名轉駝峰且首字母小寫

select concat(

-- _分割之後的第一段

substring_index(lower(t.table_name),'_',1),

-- _分割之後的第二段

substr(upper(t.table_name),length(substring_index(t.table_name,'_',1)) + 2,1),

substr(lower(t.table_name),length(substring_index(t.table_name,'_',1)) + 3,length(substring_index(t.table_name,'_',2)) - length(substring_index(t.table_name,'_',1))-2),

-- _分割之後的第三段

substr(upper(t.table_name),length(substring_index(t.table_name,'_',2)) + 2,1),

substr(lower(t.table_name),length(substring_index(t.table_name,'_',2)) + 3,length(substring_index(t.table_name,'_',3)) - length(substring_index(t.table_name,'_',2))-2),

-- _分割之後的第四段

substr(upper(t.table_name),length(substring_index(t.table_name,'_',3)) + 2,1),

substr(lower(t.table_name),length(substring_index(t.table_name,'_',3)) + 3,length(substring_index(t.table_name,'_',4)) - length(substring_index(t.table_name,'_',3))-2),

-- _分割之後的第五段

substr(upper(t.table_name),length(substring_index(t.table_name,'_',4)) + 2,1),

substr(lower(t.table_name),length(substring_index(t.table_name,'_',4)) + 3,length(substring_index(t.table_name,'_',5)) - length(substring_index(t.table_name,'_',4))-2)

from information_schema.`tables` t where t.table_schema = @scha and t.table_name = @tbl;

java 下劃線轉駝峰

將駝峰式命名的字串轉換為下劃線大寫方式。如果轉換前的駝峰式命名的字串為空,則返回空字串。例如 helloworld hello world param name 轉換前的駝峰式命名的字串 return 轉換後下劃線大寫方式命名的字串 public static string underscorena...

myssql資料庫表名轉駝峰

1.資料庫的表名,字段命名一般用下劃線分隔,在程式設計時一般使用的是駝峰命名 2.myssql沒有initcap函式,以下寫法支援四個下劃線,可以自己擴充套件 說明 you table name 替換為需要轉駝峰的表名 you table schema 替換為table schema 變數賦值 se...

JSON字串轉物件時下劃線於駝峰之間轉換的問題

最近在專案中寫了乙個功能,呼叫第三方介面,將返回json封裝到物件中返回至呼叫層 寫完後測試時發現,呼叫沒有問題,但是在封裝資料的時候發現有些資料有值,有些就是null,經過分析發現,有值的都是單個單詞的變數名,null的都是返回json中用下劃線駝峰的變數名,而我習慣中將這些變數名轉換成了首字母大...