小牛电子书 > 其他电子书 > php程序设计简明教程(DOC格式) >

第20章

php程序设计简明教程(DOC格式)-第20章

小说: php程序设计简明教程(DOC格式) 字数: 每页3500字

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!




如果返回值被使用在一个INT 上下文,或所有的参数都是整数值,他们作为整数比较。    

如果返回值被使用在一个FLOAT 上下文,或所有的参数是实数值,他们作为实数比较。    

如果任何参数是一个大小敏感的字符串,参数作为大小写敏感的字符串被比较。    

在其他的情况下,参数作为大小写无关的字符串被比较。    

mysql》 select LEAST(2;0);  

                …》 0  

mysql》 select LEAST(34。0;3。0;5。0;767。0);  

                …》 3。0  

mysql》 select LEAST(〃B〃;〃A〃;〃C〃);  

                …》 〃A〃  

在MySQL 3。22。5 以前的版本,你可以使用MIN()而不是LEAST。    

GREATEST(X;Y;。。。)    

返回最大(最大值)的参数。参数使用与LEAST 一样的规则进行比较。    

mysql》 select GREATEST(2;0);  

                …》 2  

mysql》 select GREATEST(34。0;3。0;5。0;767。0);  

                …》 767。0  

mysql》 select GREATEST(〃B〃;〃A〃;〃C〃);  

                …》 〃C〃  

在MySQL 在  3。22。5  以前的版本;  你能使用MAX()而不是GREATEST。      

 (8 )字符串函数  

对于针对字符串位置的操作,第一个位置被标记为1。    

MySQL 根据上下文自动变换数字为字符串,并且反过来也如此:    

mysql》 SELECT 1+〃1〃;  

                …》 2  

CONCAT(str1;str2;。。。)    

返回来自于参数连结的字符串。如果任何参数是NULL,返回NULL。可以有超过2 个的参数。一个数字参数被 

变换为等价的字符串形式。    

mysql》 select CONCAT('My'; 'S'; 'QL');  

                …》 'MySQL'  

mysql》 select CONCAT('My'; NULL; 'QL');  

                …》 NULL  

mysql》 select CONCAT(14。3);  



                                               PHP 讲义    第  74  页  共  90  页  


…………………………………………………………Page 75……………………………………………………………

                …》 '14。3'  

mysql》 SELECT CONCAT(2;' test');  

                …》 '2 test'  

  

LEFT(str;len)    



返回字符串str 的最左面len 个字符。  

mysql》 select LEFT('foobarbar'; 5);  

                …》 'fooba'  

RIGHT(str;len)    



返回字符串str 的最右面len 个字符。    

mysql》 select RIGHT('foobarbar'; 4);  

                …》 'rbar'  

SUBSTRING(str;pos;len)    

MID(str;pos;len)    

从字符串str 返回一个len 个字符的子串,从位置pos 开始。  

mysql》 select SUBSTRING('123456789123456';5;6);  

                …》 '567891'  

LTRIM(str)    



返回删除了其前置空格的字符串str 。    

mysql》 select LTRIM('    barbar');  

                …》 'barbar'  

RTRIM(str)    

返回删除了其尾部空格的字符串str 。    

mysql》 select RTRIM('barbar      ');  

                …》 'barbar'  

TRIM(str)    

返回去处了首尾空格的字符串str 。    

mysql》 select TRIM('    bar      ');  

                …》 'bar'  

SPACE(N)    

返回由N 个空格字符组成的一个字符串。    

mysql》 select SPACE(6);  

                …》 '            '  

REPEAT(str;count)    

返回由重复countTimes 次的字符串str 组成的一个字符串。如果count  select REPEAT('MySQL'; 3);  

                …》 'MySQLMySQLMySQL'  

LCASE(str)    

LOWER(str)    

返回字符串str,根据当前字符集映射(缺省是ISO…8859…1 Latin1)把所有的字符改变成小写。  

mysql》 select LCASE('ABCDEFG');  

                …》 'abcdefg'  

UCASE(str)    

UPPER(str)    



返回字符串str,根据当前字符集映射(缺省是ISO…8859…1 Latin1)把所有的字符改变成大写。    

mysql》 select UCASE(' abcdefg ');  

                …》 ' ABCDEFG '  



                                                  PHP 讲义    第  75  页  共  90  页  


…………………………………………………………Page 76……………………………………………………………

  

LOAD_FILE(file_name)    

读入文件并且作为一个字符串返回文件内容。文件必须在服务器上,你必须指定到文件的完整路径名,而且你必 

须有file 权限。文件必须所有内容都是可读的并且小于 max_allowed_packet。如果文件不存在或由于上面原因 

之一不能被读出,函数返回NULL。    

mysql》 UPDATE table_name  

                      SET blob_column=LOAD_FILE(〃/tmp/picture〃)  

                      WHERE id=1;  

 (9)日期和时间函数  

NOW()    

SYSDATE()    

CURRENT_TIMESTAMP    

以'YYYY…MM…DD HH:MM:SS'或YYYYMMDDHHMMSS 格式返回当前的日期和时间,取决于函数是在一个字符 

串还是在数字的上下文被使用。    

mysql》 select NOW();  

                …》 '1997…12…15 23:50:26'  

mysql》 select NOW() + 0;  

                …》 19971215235026  

CURDATE()    

CURRENT_DATE    

以'YYYY…MM…DD'或YYYYMMDD 格式返回今天日期值,取决于函数是在一个字符串还是数字上下文被使用。    

mysql》 select CURDATE();  

                …》 '1997…12…15'  

mysql》 select CURDATE() + 0;  

                …》 19971215  

CURTIME()    

CURRENT_TIME    



以'HH:MM:SS'或HHMMSS 格式返回当前时间值,取决于函数是在一个字符串还是在数字的上下文被使用。    

mysql》 select CURTIME();  

                …》 '23:50:26'  

mysql》 select CURTIME() + 0;  

                …》 235026  

                …》 10  

 (10)分组计算函数  

这些函数,常常是与GROUP BY 子句一起使用的函数,作用是对聚合在组内的行,进行计算。  

如果在不包含GROUP BY 子句的一个语句中使用聚合函数,它等价于聚合所有行。    

COUNT(expr)    

返回由一个SELECT 语句检索出来的行的非NULL 值的数目。    

mysql》 select student。student_name;COUNT(*)  

                      from student;course  

                      where student。student_id=course。student_id  

                      GROUP BY student_name;  

COUNT(*)在它返回的检索出来的行数目上有些不同,不管他们是否包含NULL 值。如果SELECT 从一个表检索, 

或没有检索出其他列并且没有WHERE 子句,COUNT(*)被优化以便快速地返回。例如:    

mysql》 select COUNT(*) from student;  

COUNT(DISTINCT expr;'expr。。。')    



返回一个无重复值的数目。    

mysql》 select COUNT(DISTINCT results) from student;  



                                            PHP 讲义    第  76  页  共  90  页  


…………………………………………………………Page 77……………………………………………………………

在MySQL 中,你可以通过给出一个表达式列表以得到不同的表达式组合的数目。  

AVG(expr)    

返回expr 的平均值。    

mysql》 select student_name; AVG(test_score)  

                      from student  

                      GROUP BY student_name;  

MIN(expr)    

MAX(expr)    

返回expr 的最小或最大值。MIN()和MAX()可以有一个字符串参数;在这种的情况下,他们返回最小或最大的字 

符串值。    

mysql》 select student_name; MIN(test_score); MAX(test_score)  

                      from student  

                      GROUP BY student_name;  

SUM(expr)    



返回expr 的和。注意,如果返回的集合没有行,它返回NULL !    



第三节  实验四  MySQL 实验  



1。MySQL 基本命令练习  



(1)准备数据  

在MS…DOS 或命令提示符下,进入MySQL 安装目录bin  

键入命令mysql 回车,连接成功后键入以下简单命令,在test 数据库中建立测试表abc,并插入示例数据。  

具体步骤和相应命令如下:  

①use test;  (回车)'说明:打开名为test 的数据库'  

Database changed       (MySQL 服务器返回的结果)  

②create table abc(a varchar(10);b varchar(10);c varchar(10));   (回车)'说明:在test 数据库中建立测试表abc'  

Query OK; 0 rows affected (0。05 sec)       (MySQL 服务器返回的结果)  

③desc abc;     (回车)'说明:显示表abc 的结构'  

 (下面为MySQL 服务器返回的结果)  

+…………………+…………………………………+………………+……………+………………………+………………………+………………………+  

| Field | Type                | Null | Key |    Default        | Extra    |  

+…………………+…………………………………+………………+……………+………………………+…………………+………………………………+  

| a          | varchar(10) | YES    |          | NULL        |              |  

| b          | varchar(10) | YES    |          | NULL        |              |  

| c          | varchar(10) | YES    |          | NULL        |              |  

+…………………+…………………………………+………………+……………+………………………+………………………+…………………………+  

3 rows in set (0。06 sec)  

④select * from abc;      (回车)'说明:查询表abc 中的数据'  

Empty set (0。11 sec)                    '说明:表abc 中无数据'  

⑤insert into abc values('a1';'b1';'c1');  (回车)'说明:在表abc 中插入第一行数据'  

Query OK; 1 row affected (0。05 sec)  

⑥insert into abc values('a2';'b2';'c2');  (回车)'说明:在表abc 中插入第二行数据'  

Query OK; 1 row affected (0。05 sec)  

⑦insert into abc values('a3';'b3';'c3');  (回车)'说明:在表abc 中插入第三行数据'  

Query OK; 1 row affected (0。05 sec)  

select * from abc; 

返回目录 上一页 下一页 回到顶部 2 1

你可能喜欢的