查詢資料庫某個數據個數
① sql語句查詢表內數據條數
select count(*) from 表名
在sql中會把*解析為相對應的列,我們不建議用*,這樣會加重sql負擔,這樣寫才是最好的:select count(列名,一列就行) from 表名。
由 SQL 查詢程序獲得的結果被存放在一個結果集中。大多數資料庫軟體系統都允許使用編程函數在結果集中進行導航,比如:Move-To-First-Record、Get-Record-Content、Move-To-Next-Record 等等。
(1)查詢資料庫某個數據個數擴展閱讀:
sql語言特點:
1、綜合統一:
SQL語言集數據定義語言DDL,數據操縱語言DML、數據控制語言DCL的功能於一體
2、高度非過程化:
用SQL語言進行數據操作,只要提出「做什麼」,而無需知名」怎麼做「,因此無需了解存取路徑,存取路徑的選擇語句SQL的操作過程由系統自動完成
3、面向集合的操作方式
SQL語言才採用集合操作方式,不僅操作對象,查找結果可以是元組的集合,而且一次插入、刪除、更新操作的對象也就可以是元組的集合
4、以同一種語言結構提供多種使用方式
SQL語言既是自含式語言,又是嵌入式語言。作為自含式語言,他能給獨立地用戶聯機交互的使用方式,作為嵌入式語言,它能夠嵌入到高級語言程序中,供程序員設計程序時使用。
② C#中查詢資料庫中記錄個數並顯示。
// 獲得數據寫入text(主方法)
private void count(object sender, EventArgs e)
{
string str1 = "select * from 表名 where 條件 ";//讀取整張表
MySqlConnection coon = MySQL.getMySqlCon();//連接資料庫,調方法
MySqlCommand mySqlCommand1 = MySQL.getSqlCommand(str1, coon);
coon.Open();
int record1 = MySQL.getResultCount(mySqlCommand1);
coon.Close();
label1.Text = record1.ToString();
}
//建立執行命令的語句對象
public static MySqlCommand getSqlCommand(String sql, MySqlConnection mysql)
{
MySqlCommand mySqlCommand = new MySqlCommand(sql, mysql);
return mySqlCommand;
}
//查詢記錄數
public static int getResultCount(MySqlCommand mySqlCommand)
{
MySqlDataReader reader = mySqlCommand.ExecuteReader();
int result = 0;
try
{
while (reader.Read())
{
if (reader.HasRows)
{
result = result + 1;
}
}
}
catch (Exception)
{
}
finally
{
reader.Close();
}
return result;
}
//此方法連接資料庫
public static MySqlConnection getMySqlCon()
{
String mysqlStr = "Database=test3;Data Source=127.0.0.1;User Id=root;Password=123456;pooling=false;CharSet=utf8;port=3306;Allow Zero Datetime=True";
MySqlConnection mysql = new MySqlConnection(mysqlStr);
return mysql;
}
③ 用sql語句統計資料庫某個欄位中相同的數據有多少條
1、可通過分組和組內計數來實現,語句如下:
select a, count(*) from A Group by a
2、用Group By分組:
Group By + [分組欄位](可以有多個)。在執行了這個操作以後,數據集將根據分組欄位的值將一個數據集劃分成各個不同的小組。
這里,分組欄位是a,所以數據集分成了你、我、他三個組。然後用Count(*)分別按照各個組來統計各自的記錄數量。
3、Count(*)函數:
Count(*) 函數返回表中的記錄數。注意它和Group by連用,返回組內記錄數。
』
(3)查詢資料庫某個數據個數擴展閱讀:
select count(*)和select count(1)的區別
一般情況下,Select Count (*)和Select Count(1)兩著返回結果是一樣的。
假如表沒有主鍵(Primary key), 那麼count(1)比count(*)快。
如果有主鍵的話,那主鍵作為count的條件時候count(主鍵)最快。
如果你的表只有一個欄位的話那count(*)就是最快的。
count(*) 跟 count(1) 的結果一樣,都包括對NULL的統計,而count(column) 是不包括NULL的統計。
網路.Group by
④ 怎麼查詢資料庫一列中值的個數
select 客戶等級,count(*) from 客戶 group by 客戶等級
⑤ 怎麼獲取資料庫表中數據的個數
利用SQL語句可以取得資料庫表中數據的個數
select count(*) from 表名
rs=stmt.executeQuery("SELECT count(1) FROM biao");
rs.next();
int a = rs.getInt(1);
⑥ mysql快速查詢資料庫中有多少條數據
今天主要復習了MySQL的一些簡單語句,可總結:
mysql 統計 表的數量:SELECT COUNT(1) FROM information_schema.TABLES WHERE TABLE_SCHEMA = '你的資料庫';
有時候需要查詢MySQL資料庫中各個表大小,該如何操作呢?
MySQL中有一個名為 information_schema 的資料庫,在該庫中有一個 TABLES 表,這個表主要欄位分別是:
TABLE_SCHEMA : 資料庫名
TABLE_NAME:表名
ENGINE:所使用的存儲引擎
TABLES_ROWS:記錄數
DATA_LENGTH:數據大小
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 = '你的資料庫';
MySQL的一些基礎語句:
行是記錄 列是欄位
創建庫
CREATE DATABASE [IF NOT EXISTS] 資料庫名 [參數[ 參數] [ 參數]...];
參數:
CHARACTER SET 碼表名
COLLATE 校對規則名, 詳見文檔10.10.1
顯示庫
SHOW DATABASES;
顯示資料庫創建語句
SHOW CREATE DATABASE 資料庫名;
修改庫
ALTER DATABASE 資料庫名[ 參數[ 參數][ 參數]...];
注意: 不能改資料庫的名字
刪除庫
DROP DATABASE [IF EXISTS] 資料庫名;
操作表之前使用需要先確定使用哪個資料庫
USE 資料庫名
創建表
CREATE TABLE 表名(列名 類型[,列名 類型][,列名 類型]...);
查看所有表
SHOW TABLES;
查看錶的創建語句
SHOW CREATE TABLE 表名;
顯示表結構
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(值[,值]...);
注意事項:
插入值類型必須與對應列的數據類型一致
數據不能超出長度
插入值得為之必須與列名順序一致
字元和日期數據要放在單引號中
插入空值使用null
如果不指定插入哪一列, 就是插入所有列
中文數據
由於默認碼表是utf8, 而cmd.exe的碼表是gbk, 在插入中文數據的時候會報錯, 所以我們需要修改客戶端碼表
先查看系統變數: SHOW VARIABLES LIKE 'character%';
修改客戶端碼表: SET character_set_client=gbk;
修改輸出數據的碼表: SET character_set_results=gbk;
修改語法
UPDATE 表名 SET 列名=值[,列名=值]...[WHERE 條件語句];
注意事項
WHERE子句選擇滿足條件的行進行更新, 如果不寫, 則更新所有行
刪除語法
DELETE FROM 表名 [where 條件語句]
注意事項
如果不加where子句, 將刪除表中所有記錄
delete只能用作刪除行, 不能刪除某一列的值, 需要用update
在delete和update的時候需要注意表與表之間的關聯關系
刪除表中所有數據可以使用: TRANCATE 表名, 這種方式會刪除舊表重新創建, 在數據較多的時候使用
備份資料庫
輸入quit退出mysql, 在cmd.exe中輸入:
mysqlmp –u用戶名 –p密碼 資料庫名 > 文件名
恢復資料庫
進入mysql.exe之後, 使用資料庫之後
source 文件名
操作數據(查詢)
DISTINCT語法
SELECT [DISTINCT] 列名[, 列名]... FROM 表名
注意事項
*可以替代列名, 表示所有列, 但是通常我們為了提高代碼的可讀性, 不使用*
DISTINCT為過濾重復記錄
如果DISTINCT後面跟多列, 是過濾掉多列合並之後的重復
列名表達式——語法
SELECT 列名|表達式[,列名|表達式]... FROM 表名
注意事項
表達式只是顯示時起作用, 不會改變資料庫中的值
AS——
SELECT 列名 AS 別名 FROM 表名
注意事項
起別名時AS可以省略
不會改變資料庫中的值
WHERE——
語法
SELECT 列名 FROM 表名 [WHERE 條件語句]
WHERE子句中的運算符
比較運算符
>, <, >=, <=, =, <>
注意不等於和Java中不同, 是<>
BETWEEN ... AND ...
某一區間內的值, 從 ... 到 ...
IN(列表)
在列表之中, 例: in(1,2,3) 代表1或2或3
LIKE(表達式)
模糊查詢, %代表多個字元, _代表單個字元
IS NULL
判斷是否為NULL
邏輯運算符
AND &&
與, 兩邊都為TRUE結果為TRUE
OR ||
或, 一邊為TRUE結果就為TRUE
NOT !
非, 將表達式結果取反
ORDER BY——
語法
SELECT 列名 FROM 表名 ORDER BY 列名 ASC|DESC;
注意事項
ORDER BY 指定排序的列名可以是表中的列名, 也可以是SELECT語句後面起的別名
ASC為升序, DESC為降序
ORDER BY應在查詢語句的結尾
COUNT函數——
語法
SELECT COUNT(*)|COUNT(列名) from 表名 [WHERE 條件語句]
注意事項
COUNT(列名)的方式是統計指定列中有多少條記錄, 不包括值為NULL的
COUNT(*)則是統計表中有多少條數據
COUNT(DISTINCT 列名) 統計不重復的記錄數
如果加上WHERE子句, 則是統計滿足條件的記錄
⑦ 如何查詢資料庫里某一張表的全部數據
查詢資料庫里某一張表的全部數據的SQL結構化查詢語句實現:SQL=Select * Fromtable。
結構化查詢語言(Structured Query Language)簡稱SQL,是一種特殊目的的編程語言,是一種資料庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統。SQL語言的主要功能就是同各種資料庫建立聯系,進行溝通。
SQL查詢語言主要結構為:
Select 查詢欄位 from 表名 Where 查詢條件語句 [排序語句或分組語句]
查詢欄位必須分別用(西文)逗號分開或就用一個*號代替,*號表示查詢全部欄位。數據檢索使用SELECT保留字。FROM子句指定SELECT語句查詢及與查詢相關的表或視圖。
SQL結構化查詢語句中還有條件、模擬、排序、聚合等子句保留字函數供靈活對資料庫、表進行查詢。
⑧ C# 查詢資料庫中某項的個數
SqlCommand cmd = con.CreateCommand();
string sql="select count(*) from main where value=true";
cmd.CommandText = sqlCount;
cmd.Connection = con;
int count = Convert.ToInt32(cmd.ExecuteScalar());
⑨ SQL 資料庫中如何統計指定數據的個數 高分急尋
;withaaas
(
Selecta=count(姓名1='mary'),
b=count(姓名2='mary'),
c=count(姓名3='mary'),
d=count(姓名4='mary'),
e=count(姓名5='mary')
From表
)
Selectcnt=aa.a+aa.b+aa.c+aa.d+aa.e
Fromaa
--滿意請採納
⑩ 資料庫如何 查詢某欄位的數量
方法是:
將要查詢欄位的長度減去該欄位將要查詢字元替換為空後的長度
sel ect len(欄位名)-len(replace(欄位名,要查詢的字元,''))from table