>  기사  >  데이터 베이스  >  mysql 연습 2: 연산자 사용

mysql 연습 2: 연산자 사용

coldplay.xixi
coldplay.xixi앞으로
2021-03-09 09:15:021684검색

mysql 연습 2: 연산자 사용

Case: varchar 유형의 필드 노트와 int 유형의 필드 가격이 포함된 데이터 테이블 tmp15를 생성합니다.

  • 연산자를 사용하여 테이블 tmp15의 다양한 필드에 작업을 수행합니다.
  • 논리 연산자를 사용하여 데이터에 대한 논리 연산을 수행합니다.
  • 비트 연산자를 사용하여 데이터에 대한 비트 연산을 수행합니다.

(무료 학습 추천: mysql 동영상 튜토리얼)


먼저 tmp15 테이블을 생성하고 레코드를 삽입합니다. 메모 값은 "Thisisgood", 가격 값은 50, SQL 문은 다음과 같습니다.

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의 정수 숫자 필드 가격에 대해 산술 연산을 수행합니다. SQL 문은 다음과 같습니다.

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의 정수 숫자 필드 가격에 대해 비교 연산을 수행합니다.

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) 가격 결정 값이 30~80 범위에 속하는지 여부, 70~30 사이의 최대값을 반환하고 가격이 목록(10, 20, 50)에 있는 값인지 확인합니다. , 35) SQL 문은 다음과 같습니다.

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 문은 다음과 같습니다.

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) 가격에 대한 논리 연산을 수행합니다. 필드 값이 null이고 0인 경우 SQL 문은 다음과 같습니다.

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) 2와 4 AND, 비트 OR 연산을 사용하여 가격 필드 값에 대해 비트 연산을 수행하고 가격에 대해 비트 연산을 수행합니다.

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) 가격 필드 값을 왼쪽과 오른쪽으로 각각 두 자리씩 이동합니다. SQL 문은 다음과 같습니다.

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: 연산자 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제