当前位置:七道奇文章资讯数据防范MySQL防范
日期:2011-05-02 15:44:00  来源:本站整理

MySQL进阶_SELECT篇(二)[MySQL防范]

赞助商链接



  本文“MySQL进阶_SELECT篇(二)[MySQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
select list:此中可以包含一项或多项下列内容:
1、"*",表示按照create table的次序布列的全部列.
2、按照用户所需次序布列的列名的清单.
3、可以利用别名代替列名,情势以下:column name as column_heading.
4、表达式(列名、常量、函数,或以算术或逐位运算符衔接的列名、常量和函数的任何组合).
5、内部函数或调集函数.
6、上述各项的任何一种组合.
FROM:决意SELECT号令中利用哪些表.普通都要求有此项,除非select_list中不含列名(比方,只有常量、算术表达式等).假如表项中有多个表,用逗号将之脱离.在关键词FROM背面的表的次序不影响后果.
表名可以给出相关别名,以便使表达清楚.这里的语法是tbl_name [AS] alias_name.比方:
select t1.name,t2.salary from employee as t1,info as t2 where t1.name=t2.name与select t1.name,t2.salary from employee t1,info t2 where t1.name=t2.name是完好等价的.
全部对该表的其他引用,比方在where子句和having子句中,都要用别名,别名不能以数字开首.
where子句设置了搜索条件,它在insert,update,delete语句中的利用办法也与在select语句中的利用办法完好相同.搜索条件紧跟在关键词where的背面.假如用户要在语句中利用多个搜索条件,则可用and或or衔接.搜索条件的基本语法是[not] expression comparison_operator expression;[not] expression [not] like "match_string";[not] expression is [not] null;[not] expression [not] between expression and expression;[not] column_name join_operator column_name;[not] boolean_expression.
and:用来联合两个条件,并在两个条件都是TRUE的时刻返回后果.当在同一语句中利用多个逻辑运算符时,and运算符老是最优先,除非用户用括号改变了运算次序.
or:用来联合两个条件,当两个条件中有任一条件是TRUE的时刻返回后果.当在同一语句中利用多个逻辑运算符时,运算符or普通在运算符and之后举行运算.当然用户可以利用括号改变运算的次序.
between:用来标识范围下限的关键词,and背面跟范围上限的值.范围where @val between x and y包含首尾值.假如between背面指定的第一个值大于第二个值,则该查询不返回任何行.
column_name:在对比中利用的列名.在会产生歧义时,一定要指明列所在的表名.
comparison_operator:对比运算符.见下表:
标记 意义
=??等于
>??大于
>=??大于等于
<=??小于等于
!=??不等于
<>??不等于
在对比char,varchar型数据时,"<"的意思是更接近字母表头部,">"代表更接近字母表尾部.普通来说,小写字母大于大写字母,大写字母大于数字,但是这大概依靠于服务器上操作系统的对比次序.
在对比时,末尾的空格是被忽视的.比方,"Dirk"等于"Dirk ".
在对比日期时,"<"表示早于,">"表示晚于.
在利用对比运算符对比character和datetime数据时,需用引号将全部数据惹起来.
expression:大概是列名、常数、函数大概是列名或常数的肆意组合,以及以算术运算符或逐位运算符衔接的函数.算术运算符以下表所示:
标记? ?意义
+? ? 加号
-? ? 减号? ?
*? ? 乘号
/? ? 除号
is null:在搜索一个NULL值时利用.
like:关键词,对char、varchar和datetime(不包含秒和毫秒)可以利用like,在MySQL中like也可以用在数字的表达式上.
当用户在搜索datetime型数据时,最好是利用关键词like,因为完好的datetime记录包含各种各样的日期组件.比方用户在列arrival_time中加入一个值"9:20",而子句where arrival_time="9:20"却没有发现它,因为MySQL把录入的数据转换成了"Jan 1,1900 9:20AM".但是子句where arrival_time like"%9:20%"就可以找到它.
boolean_expression:返回"true"或"false"值的表达式.
match_string:由字符和通配符构成的串,用单引号或双引号惹起来,是匹配情势.通配符以下表所示:
标记??意义
%? ? 0或多个字符的字符串
_? ? 任何一单个字符   以上是“MySQL进阶_SELECT篇(二)[MySQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • Windows 搭配 IIS7 PHP MySQL 环境
  • mysql Out of memory (Needed 16777224 bytes)的错误办理
  • mysql提醒[Warning] Invalid (old?) table or database name问题的办理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • MySQL Order By语法介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • mysql数据库插入速度和读取速度的调整记录
  • MySQL Order By索引优化办法
  • MySQL Order By用法分享
  • mysql #1062 –Duplicate entry ''1'' for key ''PRIMARY''
  • MySQL Order By Rand()效率解析
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .