可以考虑折衷的方法,新建一个表,将几个表的总数保存到这个表中,每次做分页的时候查询这个表就好了,这也是个很常见的设计
比如说一个论坛论坛将总贴数这个数值保存在论坛总表里面或者版块,将一个版块下面的贴数保存在版块表里面这2种设计都可以使得你不需要通过count来获得总数这种方式的冗余对你这样大数据量的情况更加适合也是属于必须的冗余
这样设计的表,你在插入新数据的时候要额外的更新这个字段,但是当这个数值非常大的,时候,你未必要实时的更新这个字段,你可以在需要的,执行一下count,然后用count得到的数字来更新这个字段
select
from
accuont
where
VIP
=
1
//上面的1
是在你表中的类型为数字类型的时候
select
from
accuont
where
VIP='1'
//上面的1
是在你表中的类型为非数字类型的时候
1、数据库增加数据:
1)插入单行
insert [into] <表名> (列名) values (列值)
例:insert into t_table (name,sex,birthday) values ('开心朋朋','男','1980/6/15')
2)将现有表数据添加到一个已有表 insert into <已有的新表> (列名) select <原表列名> from <原表名>
例:insert into t_table ('姓名','地址','电子邮件')
select name,address,email from t_table
3)直接拿现有表数据创建一个新表并填充 select <新建表列名> into <新建表名> from <源表名>例:select name,address,email into t_table from strde
2、数据库删除数据:
1)删除<满足条件的>行
delete from <表名> [where <删除条件>]。
例:delete from t_table where name='开心朋朋'(删除表t_table中列值为开心朋朋的行)
2)删除整个表 truncate table <表名>
truncate table tongxunlu
注意:删除表的所有行,但表的结构、列、约束、索引等不会被删除;不能用语有外建约束引用的表
3、数据库修改数据 update <表名> set <列名=更新值> [where <更新条件>]
例:update t_table set age=18 where name='蓝色小名'
4、数据库查询数据:
1)精确(条件)查询
select <列名> from <表名> [where <查询条件表达试>] [order by <排序的列名>[asc或desc]]
2)查询所有数据行和列。例:select from a
说明:查询a表中所有行和列
3)使用like进行模糊查询
注意:like运算副只用于字符串,所以仅与char和varchar数据类型联合使用
例:select from a where name like '赵%'
说明:查询显示表a中,name字段第一个字为赵的记录
4)使用between在某个范围内进行查询
例:select from a where nianling between 18 and 20
说明:查询显示表a中nianling在18到20之间的记录
5)使用in在列举值内进行查询
例:select name from a where address in ('北京','上海','唐山')
说明:查询表a中address值为北京或者上海或者唐山的记录,显示name字段
扩展资料:
插入之前需要创建数据表,创建方式如下:
CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
)
例如:--流程步骤定义表
create table T_flow_step_def(
Step_no int not null, --流程步骤ID
Step_name varchar(30) not null, --流程步骤名称
Step_des varchar(64) not null, --流程步骤描述
Limit_time int not null, --时限
URL varchar(64) not null, --二级菜单链接
Remark varchar(256) not null,
)
参考资料:
为什么查询数据。在生活中我们有时需要查询一张表,例如下面一张表查询所在班级 = 'S202'的所有学生信息。
查询语句的语法。我们使用SQL语句进行查询数据,我们来分析下如何查询语句的构成部分,便于我们理解怎样使用查询语句。
查询全部列和行。我们了解了sql查询语句后就可以使用了,下面是我经常用的查询方式查询数据,明白原理后可以探索下其他的方式。
查询部分列和行。我们在查询数据时很少一下子把数据一张表的数据都查询出来,很多时候都是查询一张表的部分数据,我们使用查询部分行或列就可以了。
使用别名查询。我们通常在查询数据时采用别名的习惯使我们在编写时容易编写,而且在执行联表查询使用别名利于方便 *** 作。
查询空值办法。对数据进行查询时,如果某列值是空的,我们怎么查询呢,我们可以使用 is null 作为判断条件。
查询限制行数列。我们可以看见奥运金牌的排行榜是以固定的名次排列的,有时候只显示前5名,我们使用查询限制行数列实现这个效果。
查询单列排序。考试成绩从高到底自动排序等可以使用单列排序实现,我们使用关键字DESC (降序排列)或者ASC(升序)实现对数据的排序。
查询多列排序。如果成绩按升序,课程编号按降序,该如何编写?我们就需要使用多列排序实现我们的需求。
我直接在这给你修改答案算了
使用的时候删除行号 修改数据库配置 如果想使用 页面不刷新查询数据库 需要使用JQUERY 如果有需要给我留言
1 <php
2 if(isset($_POST['submit'])&&$_POST['submit']=='提交'){
3 //判断是否是提交过来的
4 $intext = $_POST['intext'];
5 if($intext!=null||$intext!=''){
6 $link = mysql_connect("localhost", "root", "123456");
7 //数据库配置信息 第一个参数数据库位置第二个是用户名第三个是密码
8 mysql_select_db("szn_test");
9 //设置要使用的数据库
10 $sql = "select from demo where res = '"$intext"'";
11 //SQL语句
12 var_dump($sql);
13 $res = mysql_query($sql);
14 $arr = array();
15 //吧结果存入数组 并记录数组长度
16 $count = 0;
17 while($data = mysql_fetch_array($res)){
18 $arr[$count] = $data;
19 $count++;
20 }
21 //关闭数据库
22 mysql_close($link);
23 }
24 }
25
26 >
27 <html>
28 <head>
29 <title></title>
30 </head>
31 <body>
32 <form id="form1" method="post" action="demophp">
33 <input type="text" name="intext">
34 <input type="submit" name="submit" value="提交">
35 </form>
36 <php
37 if(isset($arr)&&$arr != null){
38 for($i = 0; $i < $count; $i++){
39 foreach($arr[$i] as $key => $value){
40 echo "key:"$key" value:"$value;
41 echo " ";
42 }
43 echo "<br>";
44 }
45 }
46 >
47 </body>
48 </html>
这个是数据库查询代码 你可以看以下对照着修改修改
以上就是关于如何最有效率的查询数据库中某个表的行数全部的内容,包括:如何最有效率的查询数据库中某个表的行数、怎样查询SQL数据库中某一个表中的某个列的一个数值的所有行数据、数据库的增删改查等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)