当前位置: 首页 > 图文教程 > 数据库 > MYSQL > 从一个MySQL的例子来学习查询语句

MYSQL
mysql Load Data InFile 的用法
MSSQL output使用
mysql 性能的检查和调优方法
mysql 的load data infile
MySQL 配置文件my.cnf 例子最详细翻译
MYSQL 随机 抽取实现方法及效率分析
mysql 存储过程的问题
Mysql my.ini 配置文件详解
mysql 控制台操作
mysql 服务完全卸载技巧
mysql 数据库设计
mysql 中文乱码 解决方法集锦
MYSQL 没有完全卸载将导致其安装不成功
mysql 教程 存储过程
asp.net 将图片上传到mysql数据库的方法
绿色版 mysql 安装配置
mysql root用户的密码修改和消除
MySQL 相关的环境变量
mysql 常用命令集锦[绝对精华]
linux mysql 安装与操作

MYSQL 中的 从一个MySQL的例子来学习查询语句


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 54 ::
收藏到网摘: n/a

自上学这么多年以来,得出了从一个例子入手来学习是最快最有效,并能培养出很强的实践能力,这是一种很好的学习方法。不访试试。比如看一本书的时候从各章节的例子入手,找出不了解的以及不懂的还是新知识,
进而有针对性的学习。看看下面的例子:
<?php
$ip = getenv("REMOTE_ADDR");
//echo "$ip";
$conn=mysql_connect('ip','root','****');
mysql_select_db('db',$conn);
$sql="select *from counter where ip="$ip";";
$result=mysql_query($sql,$conn);
$num=mysql_num_rows($result);
$count=mysql_query("select*from counter",$conn);
$count=mysql_num_rows($count);
//echo "$num";
//echo "$count";
if($num==0)
{
$sum=1;
$count++;
$sql="insert into counter(ip,sum,countdata)values('$ip','1','$count')";
mysql_query($sql,$conn);
mysql_close($conn);
//echo "$count";
}
else
{
$my="select sum from counter where ip='$ip'";
$bbbbbb=mysql_query($my) or die(mysql_error());
$row=mysql_fetch_Array($bbbbbb);
@$sum=$row[sum];
//echo "$sum";
$sum++;
$sql="update counter set sum='$sum' where ip='$ip'";
mysql_query($sql);
mysql_close($conn);
}
$str_count=strval($count);
$str_count=Chop($str_count);
$count_len=strlen($str_count);
$image_count="";
if($count_len<6)
{for($j=0;$j<6-$count_len;$j++)
{$image_count=$image_count."<ccid_file values="0" src=0.gif />";
}
}
for($i=0;$i<$count_len;$i++)
{
$nom=substr($str_count,$i,1);
$image_count = $image_count."<ccid_file values=";
$image_count = $image_count"
$image_count = $image_count.".gif />";
}
echo"$image_count<br>";
print"这是你的第".$sum."次访问";
?>
从上面的一个小小的计数器例子来看。已经包括了查询、插入、修改的知识。可以实现功能。记录每一个IP的访问量及总的访问次数。总量不支刷新
一、查询:
SELECT被用来检索从一个或多个表中精选的行。select_expression指出你想要检索的列。SELECT也可以用来检索不引用任何表的计算行
1、
select*from table1;
2、
select field1,field2 from table1;
3、
select count(*)from table2;
4、
select table1.filed1,table2.filed2 from table1,table2 where table1.field1='valed1';
5、
select *from table1 where field1='valed1' and fiels2='valed2' orded by field1;
6、
select*from table1 where filed1='valed1' order byfiled1 desc linit n;
7、
select *from table2 where name like '%$lin%';(模糊)
8、
sub_selects(高级)
select *from table1 where id In(select id from table2......);
9、
select ...into table...(高级)
(可用select...into outfile...;insert...selkect...替代)
10、SELECT MAX(field1) AS field1 FROM table1 列的最大值
其中:表:table 字段:field
二、修改
"update table1 set field1='value1',field2=value2'where fiels3='values3";
UPDATE用新值更新现存表中行的列,SET子句指出哪个列要修改和他们应该被给定的值,WHERE子句,如果给出,指定哪个行应该被更新,否则所有行被更新。
三、插入:
1、
insert into table1 values('field1',field2',...);
INSERT ... VALUES形式的语句基于明确指定的值插入行.
2、
replace into tbl_name(1,2,3)values('1','2','3');
REPLACE功能与INSERT完全一样,除了如果在表中的一个老记录具有在一个唯一索引上的新记录有相同的值,在新记录被插入之前,老记录被删除。
四、删除:
$a="delet from table1 where field1='$value1' and field2='$value2'";
DELETE从tbl_name表中删除满足由where_definition给出的条件的行,并且返回删除记录的个数。如果你执行一个没有WHERE子句的DELETE,所有行都被删除。