数据库语句小技巧

工作遇到的花里胡哨但是很实用的数据库相关的小技巧:

整体原创

 

一,sql语句获取某一字段的长度:

select length('某一字段');

 

二,行转列,列转行:

互转的两张表结构:

sql语句:

行转列:

SELECT
      UserName,
      MAX(CASE Subject WHEN '语文' THEN Score ELSE 0 END) AS '语文',
      MAX(CASE Subject WHEN '数学' THEN Score ELSE 0 END) AS '数学',
      MAX(CASE Subject WHEN '英语' THEN Score ELSE 0 END) AS '英语',
      MAX(CASE Subject WHEN '生物' THEN Score ELSE 0 END) AS '生物'
FROM StudentScores
GROUP BY UserName

列转行:

select user_name, '语文' COURSE , CN_SCORE as SCORE from TEST_TB_GRADE2
union select user_name, '数学' COURSE, MATH_SCORE as SCORE from TEST_TB_GRADE2
union select user_name, '英语' COURSE, EN_SCORE as SCORE from TEST_TB_GRADE2
order by user_name,COURSE;

三,查看表中的字段以及字段类型

已查询结果显示
desc 表名;
show columns from 表名;
describe 表名;

以sql语句显示
show create table 表名;

还可以通过专门的管理表来查看

use information_schema
select * from columns where table_name=’表名’;
--------------------- 
作者:goatwen 
来源:CSDN 
原文:https://blog.csdn.net/god_wen/article/details/79271032 

四,sql截取字符串函数

substring(str, pos); substring(str, pos, len) 

从字符串的第 4 个字符位置开始取,直到结束。  
mysql> select substring('sqlstudy', 4);  
+------------------------------+  
| substring('sqlstudy', 4) |  
+------------------------------+  
| study                    |  
+------------------------------+  

从字符串的第 4 个字符位置开始取,只取 2 个字符。  
mysql> select substring('sqlstudy', 4, 2);  
+---------------------------------+  
| substring('sqlstudy.', 4, 2) |  
+---------------------------------+  
| st                           |  
+---------------------------------+  

来源以及更多介绍:https://www.cnblogs.com/wjm956/p/7724244.html

 五,MySQL生成32位无"-"UUID

SELECT REPLACE(uuid(), '-', '');

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值