mysql练习之2:运算符的使用


本文摘自PHP中文网,作者coldplay.xixi,侵删。

案例:创建数据表tmp15,其中包含varchar类型的字段note和int类型的字段price。

  • 使用运算符对表tmp15中不同的字段进行运算。
  • 使用逻辑操作符对数据进行逻辑操作。
  • 使用位操作符对数据进行位操作。

(免费学习推荐:mysql视频教程)


首先创建tmp15表,插入一条记录,note值为"Thisisgood",price值为50,SQL语句如下:

1

2

3

4

5

6

7

8

9

mysql> create table tmp15    -> (

    -> note varchar(100),

    -> price int

    -> );Query OK, 0 rows affected (0.13 sec)mysql> into tmp15 values

    -> (

    -> "Thisisgood",50

    -> );

    mysql> insert into tmp15 values

    -> ("Thisisgood",50);Query OK, 1 row affected (0.06 sec)


(1)对表tmp15中的整型数值字段price进行算数运算,SQL语句如下:

1

2

3

4

5

6

7

mysql> select price,

    -> price + 10,

    -> price - 10,

    -> price * 2,

    -> price / 2,

    -> price % 3

    -> from tmp15;+-------+------------+------------+-----------+-----------+-----------+| price | price + 10 | price - 10 | price * 2 | price / 2 | price % 3 |+-------+------------+------------+-----------+-----------+-----------+|    50 |         60 |         40 |       100 |   25.0000 |         2 |+-------+------------+------------+-----------+-----------+-----------+1 row in set (0.00 sec)

(2)对表tmp15中的整型数值字段price进行比较运算,SQL语句如下:

1

2

3

4

5

6

7

8

mysql> select price,

    -> price>10,

    -> price<10,

    -> price != 10,

    -> price = 10,

    -> price<=>10,

    -> price<>10

    -> from tmp15;+-------+----------+----------+-------------+------------+------------+-----------+| price | price>10 | price<10 | price != 10 | price = 10 | price<=>10 | price<>10 |+-------+----------+----------+-------------+------------+------------+-----------+|    50 |        1 |        0 |           1 |          0 |          0 |         1 |+-------+----------+----------+-------------+------------+------------+-----------+1 row in set (0.00 sec)

(3)判断price值是否落在30―80区间、返回70、30相比最大的值、判断price是否为in列表(10、20、50、35)中的某个值,SQL语句如下:

1

2

3

4

5

mysql> select price,

    -> price between 30 and 80,

    -> greatest(price,70,30),

    -> price in(10,20,50,35)

    -> from tmp15;+-------+-------------------------+-----------------------+-----------------------+| price | price between 30 and 80 | greatest(price,70,30) | price in(10,20,50,35) |+-------+-------------------------+-----------------------+-----------------------+|    50 |                       1 |                    70 |                     1 |+-------+-------------------------+-----------------------+-----------------------+1 row in set (0.00 sec)

(4)对tmp15中的字符串数值字段note进行比较运算,判断表tmp15中note字段是否为空、使用LIKE判断是否以字母"t"开头、使用regexp判断是否以字母“y”结尾、判断是否包含字母“g”或者“m”,SQL语句如下:

1

2

3

4

5

6

mysql> select note,

    -> note is null,

    -> note like 't%',

    -> note regexp '$y',

    -> note regexp '[gm]'

    -> from tmp15;+------------+--------------+----------------+------------------+--------------------+| note       | note is null | note like 't%' | note regexp '$y' | note regexp '[gm]' |+------------+--------------+----------------+------------------+--------------------+| Thisisgood |            0 |              1 |                0 |                  1 |+------------+--------------+----------------+------------------+--------------------+1 row in set (0.05 sec)

(5)将price字段值与null、0进行逻辑运算,SQL语句如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

mysql> select price,

    -> price && 1,

    -> price && null,

    -> price || 0,

    -> price and 0,

    -> 0 and null,

    -> price or null

    -> from tmp15;+-------+------------+---------------+------------+-------------+------------+---------------+| price | price && 1 | price && null | price || 0 | price and 0 | 0 and null | price or null |+-------+------------+---------------+------------+-------------+------------+---------------+|    50 |          1 |          NULL |          1 |           0 |          0 |             1 |+-------+------------+---------------+------------+-------------+------------+---------------+1 row in set (0.00 sec)mysql> select price,

    -> !price,

    -> not null,

    -> price xor 3,

    -> 0 xor null,

    -> price xor 0

    -> from tmp15;+-------+--------+----------+-------------+------------+-------------+| price | !price | not null | price xor 3 | 0 xor null | price xor 0 |+-------+--------+----------+-------------+------------+-------------+|    50 |      0 |     NULL |           0 |       NULL |           1 |+-------+--------+----------+-------------+------------+-------------+1 row in set (0.00 sec)

(6)将price字段值与2、4进行按位与、按位或 操作,并对price进行按位操作,SQL语句如下:

1

2

3

4

mysql> select price,

    -> price & 2,

    -> price | 4,

    -> ~price from tmp15;+-------+-----------+-----------+----------------------+| price | price & 2 | price | 4 | ~price               |+-------+-----------+-----------+----------------------+|    50 |         2 |        54 | 18446744073709551565 |+-------+-----------+-----------+----------------------+1 row in set (0.00 sec)

(7)将price字段值分别额左移和右移两位,SQL语句如下:

1

2

3

4

mysql> select  price,

    -> price<<2,

    -> price>>2

    -> from tmp15;+-------+----------+----------+| price | price<<2 | price>>2 |+-------+----------+----------+|    50 |      200 |       12 |+-------+----------+----------+1 row in set (0.00 sec)

相关免费学习推荐:mysql数据库(视频)

以上就是mysql练习之2:运算符的使用的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

mysql数据控制语言实例分享

怎么查看mysql的版本?

mysql 5.5.56版本(二进制包安装)自定义安装路径步骤记录

怎么找到mysql安装位置?

phpstorm如何通过ssh连接mysql数据库

mysql如何设置远程访问密码

mysql主从同步配置的方法

mysql增删改查语句操作有哪些

数据库哈希连接详解(mysql新特性)

怎么查看电脑是否有mysql

更多相关阅读请进入《mysql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...