Mysql获取id最大值、表的记录总数等相关问题的方法汇总
一、mysql 获取当前字段最大id
SQL语句:
select max(id) from yourtable;
二、获取mysql表自增(Auto_increment)值
Auto_increment
是表中的一个属性,只要把表的状态获取到,也就可以获取到那个自增值
SQL语句:
show table status like “表名”;
php代码实现
$get_table_status_sql = "SHOW TABLE STATUS LIKE '表名'"; $result = mysql_query($get_table_status_sql); $table_status = mysql_fetch_array($result); echo $table_status['Auto_increment']; // 这个就是自增值
或
select max(id) from testnotnull;
三、获取一个表的记录总数
select count(*) from table;
或
select count(id) from table;
SELECT SQL_CALC_FOUND_ROWS * FROM table_name; SELECT FOUND_ROWS();
myisam
下count(*)
主键 时要 加条件,此条件为 类型 字段,索引无效
不加条件下非常快,加了后慢了两个数量级
使用 SHOW TABLE STATUS
语句是最高效的方法
格式
SHOW TABLE STATUS [{FROM | IN} db_name] [LIKE 'pattern' | WHERE expr]
示例:
SHOW TABLE STATUS FROM cpdlt LIKE 'lehecai_1202';
总结
以上就是为大家整理的如何获取一个表的记录数、获取一个表的最大id以及获取一个表的auto_increment值等相关问题的全部内容,希望对大家的学习或者工作带来一定的帮助,如果有疑问的大家可以留言交流。
相关推荐
-
SQL一条语句统计记录总数及各状态数
方法一. 复制代码 代码如下: SELECT SUM(正确数)+SUM(错误数) AS 总记录数,SUM(正确数),SUM(错误数) FROM ( SELECT COUNT(1) 正确数,0 错误数 FROM TB WHERE STATUS=1 UNION ALL SELECT 0 正确数,COUNT(1) 错误数 FROM TB WHERE STATUS=0) a 方法二. 复制代码 代码如下: select count(1)总记录数,sum(case when status=1 then 1
-
将所有符合条件的结果拼接成一列并用逗号隔开的一个sql语句
复制代码 代码如下: create table tb(id int, value varchar(10)) insert into tb values(1, 'aa') insert into tb values(1, 'bb') insert into tb values(2, 'aaa') insert into tb values(2, 'bbb') insert into tb values(2, 'ccc') go create function [dbo].[f_str](@id i
-
Java实现获得MySQL数据库中所有表的记录总数可行方法
在MySQL中,可以通过SELECT COUNT(*) FROM table_name查询某个表中有多少条记录.如果想知道某个数据库中所有别的记录总数应该怎么做呢?本文给出两种可行的Java程序,解决该问题. 1. 首先确定数据库中有多少个表,然后对每个表执行SELECT COUNT(*) FROM table_name 复制代码 代码如下: import java.sql.Connection; import java.sql.DriverManager; import java.sql.Pr
-
SQL查询数据库中符合条件的记录的总数
1. select count(*) from table; //统计元组个数 2. select count(列名) from table; //统计一列中值的个数 3. select count(*) from table where 字段 = ""; //符合该条件的记录总数 4. sql_count = "select count(*) from article a where 1=1 "; //这条语句中a就代表article 这张表,后面可以写a.字段来
-
mssql数据库游标批量修改符合条件记录的方法
需求:由于项目刚上传,没有票数,为了表现出一定的人气,需要在一开始把各项目的票数赋一个值 , 但每个项目不能一样,否则容易看出问题,呵呵 . 复制代码 代码如下: DECLARE @Id varchar(50) DECLARE My_Cursor CURSOR --定义游标 FOR (SELECT Id FROM dbo.kinpanAwardProject where session=9) --查出需要的集合放到游标中 OPEN My_Cursor; --打开游标 FETCH NEXT FRO
-
Mysql获取id最大值、表的记录总数等相关问题的方法汇总
一.mysql 获取当前字段最大id SQL语句: select max(id) from yourtable; 二.获取mysql表自增(Auto_increment)值 Auto_increment是表中的一个属性,只要把表的状态获取到,也就可以获取到那个自增值 SQL语句: show table status like "表名"; php代码实现 $get_table_status_sql = "SHOW TABLE STATUS LIKE '表名'"; $r
-
Oracle 当前用户下所有表的记录总数
分析当前用户下所有表的记录总数 保证好用! 复制代码 代码如下: begin dbms_utility.analyze_schema(user,'COMPUTE'); end; select t.table_name,t.num_rows,t.blocks,t.empty_blocks from user_tables t
-
PHP+MySQL统计该库中每个表的记录数并按递减顺序排列的方法
本文实例讲述了PHP+MySQL统计该库中每个表的记录数并按递减顺序排列的方法.分享给大家供大家参考,具体如下: 这是一段简单的代码,可实现统计该数据库中每个表的记录数,并按递减顺序排列的功能 $host = '127.0.0.1'; $port = 3306; $dbname = 'test'; $username = 'root'; $password = ''; function ee($p) { if(PHP_SAPI == 'cli') { echo "\n"; }else{
-
django 获取字段最大值,最新的记录操作
如果是直接在数据库拉取 from django.db.models import Max Argument.objects.all().aggregate(Max('rating')) 如果是从已经存在的model列表获取 from django.db.models import Max args = Argument.objects.all() args.aggregate(Max('rating')) 获取最新的一行数据 max_rated_entry = YourModel.objects
-
mysql获取group by的总记录行数另类方法
mysql获取group by内部可以获取到某字段的记录分组统计总数,而无法统计出分组的记录数. mysql的SQL_CALC_FOUND_ROWS 使用 获取查询的行数 在很多分页的程序中都这样写: 代码如下 SELECT COUNT(*) from `table` WHERE ......; 查出符合条件的记录总数 代码如下 SELECT * FROM `table` WHERE ...... limit M,N; 查询当页要显示的数据 这样的语句可以改成: 代码如下 SELECT SQL_
-
sql分组后二次汇总(处理表重复记录查询和删除)的实现方法
--处理表重复记录(查询和删除) /****************************************************************************************************************************************************** 1.Num.Name相同的重复值记录,没有大小关系只保留一条 2.Name相同,ID有大小关系时,保留大或小其中一个记录 整理人:中国风(Roy) 日期:2008
-
MySQL 如何限制一张表的记录数
目录 一.触发器解决方案 二.分区表解决方案 三.通用表空间解决方案 关于MySQL 如何限制一张表的记录数,这没有一个简化的答案,比如执行一条命令或者说简单设置一个参数都不能完美解决.接下来我给出一些可选解决方案. 对数据库来讲,一般问题的解决方案无非有两种,一种是在应用端:另外一种是在数据库端. 首先是在数据库端(假设表硬性限制为1W条记录): 一.触发器解决方案 触发器的思路很简单,每次插入新记录前,检查表记录数是否到达限定数量,数量未到,继续插入:数量达到,先插入一条新记录,再删除最老的
-
Mysql如何避免全表扫描的方法
在以下几种条件下,MySQL就会做全表扫描: 1>数据表是在太小了,做一次全表扫描比做索引键的查找来得快多了.当表的记录总数小于10且记录长度比较短时通常这么做. 2>没有合适用于 ON 或 WHERE 分句的索引字段. 3>让索引字段和常量值比较,MySQL已经计算(基于索引树)到常量覆盖了数据表的很大部分,因此做全表扫描应该会来得更快. 4>通过其他字段使用了一个基数很小(很多记录匹配索引键值)的索引键.这种情况下,MySQL认为使用索引键需要大量查找,还不如全表扫描来得更快.
-
mysql获取分组后每组的最大值实例详解
mysql获取分组后每组的最大值实例详解 1. 测试数据库表如下: create table test ( `id` int not null auto_increment, `name` varchar(20) not null default '', `score` int not null default 0, primary key(`id`) )engine=InnoDB CHARSET=UTF8; 2. 插入如下数据: mysql> select * from test; +---
随机推荐
- AngularJS实现根据变量改变动态加载模板的方法
- 如何在网页中显示服务器时间
- javascript和HTML5利用canvas构建猜牌游戏实现算法
- 扩展了Repeater控件的EmptyDataTemplate模板功能
- yii gridview实现时间段筛选功能
- php中将html中的br换行符转换为文本输入中的换行符
- php setcookie(name, value, expires, path, domain, secure) 参数详解
- ASP所有的Session变量获取实现代码
- jsp留言板源代码二: 给jsp初学者.
- PHP设计模式之简单投诉页面实例
- web 前端常用组件之Layer弹出层组件
- ECMA5数组的新增方法有哪些及forEach()模仿实现
- Linux磁盘空间被未知资源耗尽的解决方法
- 分享18个最佳代码编辑器/IDE开发工具
- 来自国外的一款Js图片浏览效果
- JQuery 改变页面字体大小的实现代码(实时改变网页字体大小)
- jQuery实现滚动切换的tab选项卡效果代码
- win下调用putty执行命令脚本分享
- VBScript使用ADSI为IIS批量添加屏蔽或允许访问的IP
- MySQL缓存的查询和清除命令使用详解