友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
狗狗书籍 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

SQL 21日自学通(V3.0)(PDF格式)-第23章

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






输出 



STATE    HIGHTEMP     LOWTEMP 

CA       …50          120 

FL       20           110 

LA       15           99 

ND       …70          101 

NE       …60          100 

例如    这里对数据进行这样的运算 



SQL》 SELECT  STATE    HIGHTEMP   LOWS     LOWTEMP    HIGHS  FROM   HILOW 



STATE    LOWS     HIGHS 

CA       50       …120 

FL       …20      …110 

LA       …15      …99 

ND       70       …101 

NE       60       …100 

第二种用法      很明显     是作为减号从某一列中减去另一列  例如 



SQL》 SELECT   STATE 



HIGHTEMP    LOWS 



LOWTEMP    HIGHS 



(LOWTEMP    HIGHTEMP)   DIFFERENCE 

FROM   HILOW 



   STATE    LOWS    HIGHS     DIFFERENCE 

   CA       …50      120      170 

   FL       20       110      90 



EMAIL  wyhsillypig@163。                                              45 


…………………………………………………………Page 46……………………………………………………………

SQL 21  日自学通(V1。0)                                             翻译人    笨猪 



   LA       15      99       84 

  ND        …70     101      171 

  NE        …60     100      160 

注意这里使用了别名来对输入的错误进行更正  这只不过是一种暂时的补救方法  虽然这 



不是永久的解决办法  你是以后  第 21  天             常见的 SQL  错误及其解决方案  会看到如何 



对数据以及输入进行更正           在那里你将学会如何对错误的数据进行更正 

该查询不只是修正         至少看起来是这样         错误的数据      而且还创建了一个新列以获得每个 



记录的最高与最低的差价 



如何你在一个字符型字段中意外地使用了减号  你将会看到如下信息 



SQL》    SELECT    STATE  FROM   HILOW 



ERROR   ORA…01722  invalid number 



No  rows  selected 

在不同的解释器中错误的号码可能会不同  但是结果是相同的 



除法 



除法只有一种显而易见的应用  在 PRICE 表中它的应用如下 



输入 

SQL》 SELECT * FROM PRICE 



输出: 



     ITEM         WHOLESALE 

     TOMATOES     。34 

     POTATOES     。51 

     BANANAS      。67 

     TURNIPS      。45 

     CHEESE       。89 

     APPLES       。23 



rows  selected。 

在下边的例句中你可以成功地将销售价折半 



输入/输出 



SQL》  SELECT ITEM  WHOLESALE     (WHOLESALE/2)  SALEPRICE  2  FROM  PRICE 



ITEM        WHOLESALE     SALEPRICE 

TOMATOES    。34           。170 

POTATOES    。51           。255 

BANANAS     。67           。335 

TURNIPS     。45           。225 

CHEESE      。89           。445 

APPLES      。23           。115 

6  rows selected。 

在这个 SELECT    语句中除法的作用是显而易见的              只不过将商品半价销售有点太难以理解 



了 



乘法    * 



乘法的运算也非常直观          再以 Price 表为例 

输入 



SQL》  SELECT   *  FROM   PRICE 



输出 



ITEM         WHOLESALE 

TOMATOES     。34 

POTATOES     。51 

BANANAS      。67 



EMAIL  wyhsillypig@163。                                             46 


…………………………………………………………Page 47……………………………………………………………

SQL 21  日自学通(V1。0)                                                    翻译人    笨猪 



TURNIPS       。45 

CHEESE        。89 

APPLES        。23 



6  rows  selected。 

将表中的价格下调 10%可以用如下方法来实现 



输入/输出: 

SQL》SELECT    ITEM   WHOLESALE      WHOLESALE     *  0。9  NEWPRICE 



          FROM PRICE 



ITEM           WHOLESALE       NEWPRICE 

TOMATOES      。34              。306 

POTATOES      。51              。459 

BANANAS       。67              。603 

TURNIPS       。45              。405 

CHEESE        。89              。801 

APPLES        。23              。207 



6  rows  selected。 

通过这些操作您可以在 SELECT 语句中进行复杂的运算 



取模  % 



取模运算将返回一个除法的余数部分                   以REMAINS 表举例如下 



输入 



SQL》   SELECT   *  FROM    REMAINS 

输出 



     NUMERATOR       DENOMINATOR 

     10              5 

     8               3 

     23              9 

     40               17 

     1024             16 

     85              34 



6  rows  selected。 

你也可以用 NUMERATOR % DENOMINATOR 的结果来建立一个新列 

输入/输出 



SQL》   SELECT   NUMERATOR       DENOMINATOR        NUMERATOR%DENOMINATOR 



REMAINDER     FROM REMAINS 



NUMERATOR              DENOMINATOR           REMAINDER 

10                     5                     0 

8                      3                     2 

23                     9                     5 

40                      17                   6 

1024                    16                   0 

85                     34                    17 

6   rows   selected。 

在一些 SQL  解释器中取模运算符为 MOD                见第 4  天    函数— — 返回数据的再加工            下边 



的语句所得到的结果与上边的语句相同 



SQL》 SELECT NUMERATOR      DENOMINATOR      MOD   NUMERATOR     DENOMINATOR 



REMAINDER     FROM    REMAINS 

优先级别 



在这一部分的例子中主要讲述在 SELECT  语句中的优先级别                        数据库 PRECEDENCE       的内 



容如下 



EMAIL  wyhsillypig@163。                                                    47 


…………………………………………………………Page 48……………………………………………………………

SQL 21  日自学通(V1。0)                                              翻译人    笨猪 



SQL》  SELECT   *  FROM   PRECEDENCE 



      N1   N2    N3    N4 

      1    2     3     4 

      13   24    35    46 

      9     3    23    5 

      63   2     45    3 

      7    2     1     4 

用 PRECEDENCE 来做如下例子 



输入/输出 



SQL》  SELECT 

2  N1+N2*N3/N4 

3  (N1+N2)*N3/N4 



4  N1+(N2*N3)/N4 

5  FROM   PRECEDENCE 



      N1+N2*N3/N4    (N1+N2)*N3/N4   N1+(N2*N3)/N4 



      2。5            2。25            2。5 

      31。26          28。15           31。26 

      22。8           55。2            22。8 

      93             975             93 

      7。5            2。25            7。5 

看到了吗      第一例与最后一例的结果是相同的                   如果你把第四列改写成为 N1+N2* 



(N3/N4) 那么其结果与上边的例子是相同的 

比较运算 



顾名思义       比较运
返回目录 上一页 下一页 回到顶部 0 0
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!