?
常見的聚合函數(shù):
avg(),求平均值;?sum() 求和;
count(),計(jì)算和;?min()求最小值;
max()求最大值
聚合函數(shù)的應(yīng)用場景:
COUNT:用于統(tǒng)計(jì)指定列的行數(shù),可以用于統(tǒng)計(jì)表中的記錄數(shù)或者去重后的記錄
數(shù)。
SUM:用于計(jì)算指定列的總和,可以用于計(jì)算某個時間段內(nèi)的銷售總額等。
AVG:用于計(jì)算指定列的平均值,可以用于計(jì)算某個時間段內(nèi)的平均銷售額等。
MAX:用于返回指定列的最大值,可以用于查找最高分?jǐn)?shù)或者最大年齡等。
MIN:用于返回指定列的最小值,可以用于查找最低分?jǐn)?shù)或者最小年齡等。
三范式的各個范式的目的是:
第一范式:每個字段的數(shù)據(jù)不能再被拆分
第二范式:通過拆表的方式減少數(shù)據(jù)冗余
第三范式:通過分析實(shí)體的關(guān)系來形成主表與從表
三范式的優(yōu)缺點(diǎn):
優(yōu)點(diǎn):三大范式既減少數(shù)據(jù)冗余,也避免了一些更新數(shù)據(jù)時的異常。
· 滿足范式的表通常較小,可以更好的放入內(nèi)存,執(zhí)行操作更快;
缺點(diǎn):按照范式設(shè)計(jì)出來的表在數(shù)據(jù)冗余的問題雖然得到解決,但是會生成許多
表,導(dǎo)致了表數(shù)量的復(fù)雜性,其二,查詢· 數(shù)據(jù)的時候,多表查詢的時間遠(yuǎn)遠(yuǎn)高
于單表查詢的時間。
項(xiàng)目的sql語句:
已知tb_note為所有的筆記 用noteId來區(qū)分,tb_note_type中含有id對應(yīng)的type
?
?
需求1:根據(jù)noteId查找出云記的筆記各方面信息 包括type
Select noteId,title,content,pubTime,typeName,n.typeId from tb_note n inner join tb_note_type t on n.typeId =t.typeId where noteId=?;
需求2:
通過userId查詢云記列表中的某些值:
Select lon,lat from tb_note n inner join tb_note_type t on n.typeId=t.typeId where userId=?;
需求3;
刪除某指定noteId對應(yīng)的行
Delete from tb_note where noteId=?;
需求4:
按照次數(shù)排序降序 找出相同年月的云記
DATA_FORMAT ( pubTime , ’%y年%m月’)=================》日期格式化
將 count(1) 重命名為 notecount
格式化后的列 重命名為 groupname
根據(jù)時間來分組文章來源:http://www.zghlxwxcb.cn/news/detail-418001.html
根據(jù)count來排序文章來源地址http://www.zghlxwxcb.cn/news/detail-418001.html
Select count(1)Notecount, DATA_FORMAT(pubTime, '%y年%m月') ?groupName
from tb_note n inner join tb_note_type t on n.typeId =t.typeId where userId =?
group by DATA_FORMAT(pubtime,'%y年%m%日')
?order by DATA_FORMAT(publicTime,'%y年%m月') desc;
到了這里,關(guān)于sql知識點(diǎn)復(fù)習(xí)以及項(xiàng)目中的例子的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!