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

MYSQL
mysql 常用数据库语句 小练习
MYSQL ERROR 1045 (28000): Access denied for user (using password: YES)问题的解决
mysql 字符集的系统变量说明
MySQL 在触发器里中断记录的插入或更新?
将MySQL数据库移植为PostgreSQL
mysql 操作总结 INSERT和REPLACE
linux mysql忘记密码的多种解决或Access denied for user ''root''@''localhost''
运用mysqldump 工具时需要注意的问题
mysql 优化日记
MySQL 字符串函数大全
mysql 截取指定的两个字符串之间的内容
MySQL 备份还原数据库批处理
mysql 数据库中my.ini的优化 2G内存针对站多 抗压型的设置
Mysql 数字类型转换函数
mysql 动态生成测试数据
mysql 显示SQL语句执行时间的代码
mysql 设置查询缓存
MYSQL explain 执行计划
MySQL 有输入输出参数的存储过程实例
巧用mysql提示符prompt清晰管理数据库的方法

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 59 ::
收藏到网摘: 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,所有行都被删除。