-- 常用函式 字元編碼uft8漢字為3個位元組 gbk漢字兩個位元組 gbk占用空間小速度快 utf8相容性好
-- length 返回字元的位元組數
select length('asd王');
-- char_length 返回字元個數
select char_length('asf喊');
select * from student where char_length(sname)=2;
select * from student where sname like '__';
select rand();-- 返回隨機小數[0,1)
select round(rand()); -- 0或1
select round(rand()*3)+1;-- 1到4之間的隨機整數 rand()*3的範圍是0-3
select * from student limit 2 ;-- 限制顯示兩行
select * from student order by rand() limit 2;-- 隨機查詢兩條記錄
-- 檢視十天的會員註冊人數
-- menber 會員表 regdate 註冊日期
select count(*) from menber where regdate between date_add(now(),interval -10 day);
-- 檢視十天前的時間日期
select date_add(now(),interval -10 day),now();
-- 十天後的時間
select date_add(now(),interval 10 day),now();
select date_add(now(),interval -2 hour);-- 兩小時之前
select date_add(now(),interval -8 month) 八個月前;
-- datefiff 兩個日期差的天數
select datediff(curdate(),'1992-9-18');
-- 格式化日期函式 例:y只顯示16年 y顯示2023年
select date_format(now(),'%y年%m月%d日');
create table ss(
sid int,
sname varchar(30),
sscore tinyint unsigned,
sbirthday datetime
);delete from ss;
insert into ss values(1,'張三',80,'1992-9-18 9:50:22'),(2,'李四',50,'1996-4-18'),(1,'王五',90,'1988-6-22');
select * from ss;
select sname 姓名,date_format(sbirthday,'%y年%m月') 出生年月 from ss;
-- timestampdiff可算年月日時分秒 具體看date_add
select timestampdiff(hour,'2015-7-10 12:30:00',now()) 工作時間;-- 從那個時間點到現在是多少個小時
select timestampdiff(minute,'2015-7-10 12:30:00',now()) 工作時間; -- 總的分鐘數
select timestampdiff(month,'2015-7-10 12:30:00',now()) 工作時間;
----------------------------
select weekofyear(now());-- 當前是今年的第幾周
-- 日期時間 儲存過程可以使用int unsigned類
-- form_unixtime 將數字表達的日期格式化成標準yyyy-mm-dd h-i-s
select from_unixtime(1476555100,'%y-%m-%d %t');
select from_unixtime(unix_timestamp()),unix_timestamp();-- 日期對應的數字
select unix_timestamp();-- 將日期轉換成數字儲存
select inet_aton ('111.13.100.91');-- 將ip轉換成相應的數字 1863148635
--------------------------------------
-- 字串處理
-- 大小寫轉換
select upper('hello'),lower('hello');
-- 不區分大小寫admin
select * from admin where lower(sname)=lower('admin');
select left(sname,2)from ss;-- 取目標的左邊(右邊用right)前2個字元
select mid(sname,2,1)from ss;-- 從第二個字開始取乙個字元
update menber set password=right(tel,6) where mmid=1000;-- 將id為1000的會員的密碼設定成他手機號的後六位
select ifnull(null,'保密');
select ifnull('男','保密');
select ifnull('女','保密');
select ifnull(sgender,'保密')from student;
select * from ss;
update ss set sscore=20 where sid=2;
select sid,sname,sscore,if(sscore>=90,'優秀',if(sscore>=70,'良好',if(sscore>=60,'及格','補考'))) 等級 from ss;
-- 加密函式
-- md5 32位 sha1 40位 都是單項加密
select md5('admin'),sha1('admin'),password('aaa');
-- uuid 36位16進製制的全球唯一字串
select uuid(),length(uuid());-- 84da3ed7-e74c-11e5-8edb-089e0156af5a
select format(2,2);-- 2.00 指定兩位小數
-- 數字轉ip ip轉數字(最好整型無符號)
select inet_aton('192.168.1.1');-- 3232235777
select inet_ntoa('3232235777');-- 192.168.1.1
-- php+mysql 專案開發的時間
日期時間和ip位址採用資料庫的 int unsigned 型別儲存
reg datetime
reg int unsigned
Java8 常用函式式介面
本文主要參考 在此感謝 接收乙個引數t,沒有返回值 原始碼 functionalinte ce public inte ce consumer 示例 講述乙個學生在學習過程中,需要買學習用品。買什麼東西是具體的實現,我們在呼叫study 方法的時候再指定。test public void testc...
Java8常用的函式式介面
1 predicate 斷言型介面 傳入的字串是否以 sql 結尾 predicateisendwithsql s s.endswith sql 傳入的字串非 sql 結尾 predicatenotendwithsql isendwithsql.negate boolean test isendwi...
Python常用內建函式分8類總結
內建函式 python3直譯器中內建了69個常用函式,屬於底層的函式,它們到處可用。有些對大家來說比較熟悉,比如abs max sum 也有一些比較陌生,比如locals all compile getattr 今天按照類別扼要總結。1 型別相關 bool 布林型 int 整形 str 字元型 tu...