数据库知识与技巧日常汇总
生活随笔
收集整理的這篇文章主要介紹了
数据库知识与技巧日常汇总
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 快速導出數據庫的字段到Excel
(2020年6月22日)
SELECTCOLUMN_NAME 列名,COLUMN_TYPE 數據類型,DATA_TYPE 字段類型,CHARACTER_MAXIMUM_LENGTH 長度,IS_NULLABLE 是否為空,COLUMN_DEFAULT 默認值,COLUMN_COMMENT 備注 FROMINFORMATION_SCHEMA. COLUMNS WHERE-- senta-service-mdt2.0為數據庫名稱,到時候只需要修改成你要導出表結構的數據庫即可table_schema = 'ms_convenience' AND -- s_patient_list為表名,到時候換成你要導出的表的名稱 -- 如果不寫的話,默認會查詢出所有表中的數據,這樣可能就分不清到底哪些字段是哪張表中的了,所以還是建議寫上要導出的名名稱 table_name = 'con_my_address'2. SQL快速查找是否"存在"
# 正常寫法 ##### SQL寫法: SELECT count(*) FROM table WHERE a = 1 AND b = 2##### Java寫法: int nums = xxDao.countXxxxByXxx(params); if ( nums > 0 ) {//當存在時,執行這里的代碼 } else {//當不存在時,執行這里的代碼 } # 優化寫法 ##### SQL寫法: SELECT 1 FROM table WHERE a = 1 AND b = 2 LIMIT 1##### Java寫法: Integer exist = xxDao.existXxxxByXxx(params); if ( exist != NULL ) {//當存在時,執行這里的代碼 } else {//當不存在時,執行這里的代碼 }https://mp.weixin.qq.com/s/JHHVWkJnwkMgcyCXWUiWqQ
3. 查詢樹形表格某個節點的所有子節點
通過創建函數,然后調用函數即可。
字符串形
CREATE FUNCTION `getChildList`(rootId varchar(36)) RETURNS varchar(1000) CHARSET utf8 BEGIN DECLARE sTemp VARCHAR(1000); DECLARE sTempChd VARCHAR(1000); SET sTemp='$'; SET sTempChd=cast(rootId AS CHAR); WHILE sTempChd IS NOT NULL DO SET sTemp=concat(sTemp,',',sTempChd); SELECT group_concat(code) INTO sTempChd FROMorgan WHEREFIND_IN_SET(pcode, sTempChd) > 0;END WHILE; RETURN substr(sTemp, 3); END調用
select getChildList('10000005') as childList;4. 自增主鍵從某個值開始
-- 清空表的所有內容,包括自增序列 TRUNCATE TABEL USER; -- 設置自增主鍵從某個值開始 ALTER TABLE USER AUTO_INCREMENT=109;5. 列轉行使用max
SELECT orgcode,MAX(carry) carry,MAX(haircut) haircut,MAX(water) water,MAX(wash) wash FROM( SELECT organization_code orgcode,count(1) carry,0 haircut,0 wash,0 water FROM con_carry_order GROUP BY organization_code UNION SELECT organization_code orgcode,0 carry,count(1) haircut,0 wash,0 water FROM con_haircut_order GROUP BY organization_code UNION SELECT organization_code orgcode,0 carry,0 haircut,count(1) wash,0 water FROM con_water_order GROUP BY organization_code UNION SELECT organization_code orgcode,0 carry,0 haircut,0 wash,count(1) water FROM con_wash_order GROUP BY organization_code) a GROUP BY orgcode?
總結
以上是生活随笔為你收集整理的数据库知识与技巧日常汇总的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 台达PLC,触摸屏程序工程案例 含电气图
- 下一篇: linux cmake编译源码,linu