寫兩條sql分別統(tǒng)計(jì)兩張表,再相加。
創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括武昌網(wǎng)站建設(shè)、武昌網(wǎng)站制作、武昌網(wǎng)頁制作以及武昌網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,武昌網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到武昌省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
或者把兩張表union 一下,再統(tǒng)計(jì)。
表統(tǒng)計(jì)信息是數(shù)據(jù)庫基于成本的優(yōu)化器最重要的參考信息;統(tǒng)計(jì)信息不準(zhǔn)確,優(yōu)化器可能給出不夠優(yōu)化的執(zhí)行計(jì)劃或者是錯(cuò)誤的執(zhí)行計(jì)劃。對統(tǒng)計(jì)信息的計(jì)算分為非持久化統(tǒng)計(jì)信息(實(shí)時(shí)計(jì)算)與持久化統(tǒng)計(jì)信息。
非持久化統(tǒng)計(jì)信息
統(tǒng)計(jì)信息沒有保存在磁盤上,而是頻繁的實(shí)時(shí)計(jì)算統(tǒng)計(jì)信息;
每次對表的訪問都會重新計(jì)算其統(tǒng)計(jì)信息;
假設(shè)針對一張大表的頻繁查詢,那么每次都要重新計(jì)算統(tǒng)計(jì)信息,很耗費(fèi)資源。
持久化統(tǒng)計(jì)信息
把一張表在某一時(shí)刻的統(tǒng)計(jì)信息值保存在磁盤上;
避免每次查詢時(shí)重新計(jì)算;
如果表更新不是很頻繁,或者沒有達(dá)到 MySQL 必須重新計(jì)算統(tǒng)計(jì)信息的臨界值,可直接從磁盤上獲取;
即使 MySQL 服務(wù)重啟,也可以快速的獲取統(tǒng)計(jì)信息值;
統(tǒng)計(jì)信息的持久化可以針對全局設(shè)置也可以針對單表設(shè)置。
接下來,詳細(xì)說 MySQL 統(tǒng)計(jì)信息如何計(jì)算,何時(shí)計(jì)算,效果評估等問題。在 MySQL Server 層來控制是否自動(dòng)計(jì)算統(tǒng)計(jì)信息的分布,并且來決策是持久化還是非持久化。
用語句SELECT count(*) FROM table_name;查詢,下面以查詢數(shù)據(jù)庫history下的表格名為111的數(shù)據(jù)條數(shù)為例:
1、在命令行輸入mysql -u root -p,再輸入mysql的密碼進(jìn)入mysql
2、輸入use history進(jìn)入history數(shù)據(jù)庫
3、輸入語句SELECT count(*) FROM 111;查詢表格111的總數(shù)據(jù)條數(shù)
4、如下圖所示,可以看到總數(shù)據(jù)條數(shù)是1744364
sql查詢表中數(shù)據(jù)總條:SELECT COUNT(*)?FROM?表名稱。
count(*)代表著數(shù)據(jù)統(tǒng)計(jì)的總數(shù)。
例子
本例返回 "Persons" 表中的行數(shù):
SELECT COUNT(*) FROM Personsinfo。
返回大于 20 歲的人數(shù):
SELECT COUNT(*) FROM Personsinfo WHERE Age20
根據(jù)篩選條件來統(tǒng)計(jì)總數(shù)。
拓展資料
SQL
結(jié)構(gòu)化查詢語言(Structured Query Language)簡稱SQL(發(fā)音:/?es kju? ?el/ "S-Q-L"),是一種特殊目的的編程語言,是一種數(shù)據(jù)庫查詢和程序設(shè)計(jì)語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng);同時(shí)也是數(shù)據(jù)庫腳本文件的擴(kuò)展名。
結(jié)構(gòu)化查詢語言是高級的非過程化編程語言,允許用戶在高層數(shù)據(jù)結(jié)構(gòu)上工作。它不要求用戶指定對數(shù)據(jù)的存放方法,也不需要用戶了解具體的數(shù)據(jù)存放方式,所以具有完全不同底層結(jié)構(gòu)的不同數(shù)據(jù)庫系統(tǒng), 可以使用相同的結(jié)構(gòu)化查詢語言作為數(shù)據(jù)輸入與管理的接口。結(jié)構(gòu)化查詢語言語句可以嵌套,這使它具有極大的靈活性和強(qiáng)大的功能。
參考資料:百度百科——SQL
今天主要復(fù)習(xí)了MySQL的一些簡單語句,可總結(jié):
mysql 統(tǒng)計(jì) 表的數(shù)量:SELECT COUNT(1) FROM information_schema.TABLES WHERE TABLE_SCHEMA = '你的數(shù)據(jù)庫';
有時(shí)候需要查詢MySQL數(shù)據(jù)庫中各個(gè)表大小,該如何操作呢?
MySQL中有一個(gè)名為 information_schema 的數(shù)據(jù)庫,在該庫中有一個(gè) TABLES 表,這個(gè)表主要字段分別是:
TABLE_SCHEMA : 數(shù)據(jù)庫名
TABLE_NAME:表名
ENGINE:所使用的存儲引擎
TABLES_ROWS:記錄數(shù)
DATA_LENGTH:數(shù)據(jù)大小
INDEX_LENGTH:索引大小
use information_schema;
SELECT
TABLE_NAME,
(DATA_LENGTH/1024/1024) as DataM ,
(INDEX_LENGTH/1024/1024) as IndexM,
((DATA_LENGTH+INDEX_LENGTH)/1024/1024) as AllM,
TABLE_ROWS
FROM
TABLES
WHERE
TABLE_SCHEMA = '你的數(shù)據(jù)庫';
MySQL的一些基礎(chǔ)語句:
行是記錄 列是字段
創(chuàng)建庫
CREATE DATABASE [IF NOT EXISTS] 數(shù)據(jù)庫名 [參數(shù)[ 參數(shù)] [ 參數(shù)]...];
參數(shù):
CHARACTER SET 碼表名
COLLATE 校對規(guī)則名, 詳見文檔10.10.1
顯示庫
SHOW DATABASES;
顯示數(shù)據(jù)庫創(chuàng)建語句
SHOW CREATE DATABASE 數(shù)據(jù)庫名;
修改庫
ALTER DATABASE 數(shù)據(jù)庫名[ 參數(shù)[ 參數(shù)][ 參數(shù)]...];
注意: 不能改數(shù)據(jù)庫的名字
刪除庫
DROP DATABASE [IF EXISTS] 數(shù)據(jù)庫名;
操作表之前使用需要先確定使用哪個(gè)數(shù)據(jù)庫
USE 數(shù)據(jù)庫名
創(chuàng)建表
CREATE TABLE 表名(列名 類型[,列名 類型][,列名 類型]...);
查看所有表
SHOW TABLES;
查看表的創(chuàng)建語句
SHOW CREATE TABLE 表名;
顯示表結(jié)構(gòu)
DESC 表名;
修改表名
RENAME TABLE 原表名 TO 新表名;
修改字符集
ALTER TABLE 表名 CHARACTER SET 字符集名;
刪除表
DROP TABLE 表名;
追加列
ALTER TABLE 表名 ADD 列名 類型[,列名 類型][,列名 類型]...;
修改列類型
ALTER TABLE 表名 MODIFY 列名 類型[,列名 類型][,列名 類型]...;
修改列
ALTER TABLE 表名 CHANGE COLUMN 原列名 新列名 類型;
刪除列
ALTER TABLE 表名 DROP 列名;
插入語法:
INSERT INTO 表名[(列名[,列名]...)] VALUES(值[,值]...);
注意事項(xiàng):
插入值類型必須與對應(yīng)列的數(shù)據(jù)類型一致
數(shù)據(jù)不能超出長度
插入值得為之必須與列名順序一致
字符和日期數(shù)據(jù)要放在單引號中
插入空值使用null
如果不指定插入哪一列, 就是插入所有列
中文數(shù)據(jù)
由于默認(rèn)碼表是utf8, 而cmd.exe的碼表是gbk, 在插入中文數(shù)據(jù)的時(shí)候會報(bào)錯(cuò), 所以我們需要修改客戶端碼表
先查看系統(tǒng)變量: SHOW VARIABLES LIKE 'character%';
修改客戶端碼表: SET character_set_client=gbk;
修改輸出數(shù)據(jù)的碼表: SET character_set_results=gbk;
修改語法
UPDATE 表名 SET 列名=值[,列名=值]...[WHERE 條件語句];
注意事項(xiàng)
WHERE子句選擇滿足條件的行進(jìn)行更新, 如果不寫, 則更新所有行
刪除語法
DELETE FROM 表名 [where 條件語句]
注意事項(xiàng)
如果不加where子句, 將刪除表中所有記錄
delete只能用作刪除行, 不能刪除某一列的值, 需要用update
在delete和update的時(shí)候需要注意表與表之間的關(guān)聯(lián)關(guān)系
刪除表中所有數(shù)據(jù)可以使用: TRANCATE 表名, 這種方式會刪除舊表重新創(chuàng)建, 在數(shù)據(jù)較多的時(shí)候使用
備份數(shù)據(jù)庫
輸入quit退出mysql, 在cmd.exe中輸入:
mysqldump –u用戶名 –p密碼 數(shù)據(jù)庫名 文件名
恢復(fù)數(shù)據(jù)庫
進(jìn)入mysql.exe之后, 使用數(shù)據(jù)庫之后
source 文件名
操作數(shù)據(jù)(查詢)
DISTINCT語法
SELECT [DISTINCT] 列名[, 列名]... FROM 表名
注意事項(xiàng)
*可以替代列名, 表示所有列, 但是通常我們?yōu)榱颂岣叽a的可讀性, 不使用*
DISTINCT為過濾重復(fù)記錄
如果DISTINCT后面跟多列, 是過濾掉多列合并之后的重復(fù)
列名表達(dá)式——語法
SELECT 列名|表達(dá)式[,列名|表達(dá)式]... FROM 表名
注意事項(xiàng)
表達(dá)式只是顯示時(shí)起作用, 不會改變數(shù)據(jù)庫中的值
AS——
SELECT 列名 AS 別名 FROM 表名
注意事項(xiàng)
起別名時(shí)AS可以省略
不會改變數(shù)據(jù)庫中的值
WHERE——
語法
SELECT 列名 FROM 表名 [WHERE 條件語句]
WHERE子句中的運(yùn)算符
比較運(yùn)算符
, , =, =, =,
注意不等于和Java中不同, 是
BETWEEN ... AND ...
某一區(qū)間內(nèi)的值, 從 ... 到 ...
IN(列表)
在列表之中, 例: in(1,2,3) 代表1或2或3
LIKE(表達(dá)式)
模糊查詢, %代表多個(gè)字符, _代表單個(gè)字符
IS NULL
判斷是否為NULL
邏輯運(yùn)算符
AND
與, 兩邊都為TRUE結(jié)果為TRUE
OR ||
或, 一邊為TRUE結(jié)果就為TRUE
NOT !
非, 將表達(dá)式結(jié)果取反
ORDER BY——
語法
SELECT 列名 FROM 表名 ORDER BY 列名 ASC|DESC;
注意事項(xiàng)
ORDER BY 指定排序的列名可以是表中的列名, 也可以是SELECT語句后面起的別名
ASC為升序, DESC為降序
ORDER BY應(yīng)在查詢語句的結(jié)尾
COUNT函數(shù)——
語法
SELECT COUNT(*)|COUNT(列名) from 表名 [WHERE 條件語句]
注意事項(xiàng)
COUNT(列名)的方式是統(tǒng)計(jì)指定列中有多少條記錄, 不包括值為NULL的
COUNT(*)則是統(tǒng)計(jì)表中有多少條數(shù)據(jù)
COUNT(DISTINCT 列名) 統(tǒng)計(jì)不重復(fù)的記錄數(shù)
如果加上WHERE子句, 則是統(tǒng)計(jì)滿足條件的記錄
當(dāng)前題目:mysql怎么統(tǒng)計(jì)條數(shù)的簡單介紹
文章起源:http://aaarwkj.com/article48/docpghp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、標(biāo)簽優(yōu)化、小程序開發(fā)、Google、關(guān)鍵詞優(yōu)化、用戶體驗(yàn)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)