zoukankan      html  css  js  c++  java
  • mysql语句

    增:Insert  into 表名 value 值

    删:Delect from 表名  where  值

    改:Update 表名 set 字段=字段 where 字段;

    查:Select * from 表名

    自增  auto_increment       
    主键  primary key
    非空  not null
    唯一 unique
    默认值  default
    外键  foreign key 

    1. # 查看所有的数据库: SHOW DATABASES ;

    2. # 创建一个数据库: CREATE DATABASE k;

    3. # 删除一个数据库: DROP DATABASE k;

    4. # 使用这个数据库  USE k;

    1. # 查看所有的表  SHOW TABLES ;

    2. # 创建一个表  CREATE TABLE n(id INT, name VARCHAR(10));

    3. CREATE TABLE m(id INT, name VARCHAR(10), PRIMARY KEY (id), FOREIGN KEY (id) REFERENCES n(id), UNIQUE (name));

    4. CREATE TABLE m(id INT, name VARCHAR(10));

    5. # 直接将查询结果导入或复制到新创建的表 : CREATE TABLE n SELECT * FROM m;

    6. # 新创建的表与一个存在的表的数据结构类似:  CREATE TABLE m LIKE n;

    7. # 临时表将在你连接MySQL期间存在。当断开连接时,MySQL将自动删除表并释放所用的空间。也可手动删除。

    8. CREATE TEMPORARY TABLE l(id INT, name VARCHAR(10));

    9. # 直接将查询结果导入或复制到新创建的临时表  CREATE TEMPORARY TABLE tt SELECT * FROM n;

    10. # 删除一个存在表  DROP TABLE IF EXISTS m;

    11. # 更改存在表的名称

    12. ALTER TABLE n RENAME m;

    13. RENAME TABLE n TO m;

    14. # 查看表的结构(以下五条语句效果相同)

    15. DESC n; # 因为简单,所以建议使用

    16. DESCRIBE n;

    17. SHOW COLUMNS IN n;

    18. SHOW COLUMNS FROM n;

    19. EXPLAIN n;

    20. # 查看表的创建语句

    21. SHOW CREATE TABLE n;

    表的结构

    1. # 添加字段: ALTER TABLE n ADD age VARCHAR(2) ;

    2. # 删除字段: ALTER TABLE n DROP age;

    3. # 更改字段属性和属性:ALTER TABLE n CHANGE age a INT;

    4. # 只更改字段属性:ALTER TABLE n MODIFY age VARCHAR(7) ;

    表的数据

    1. # 增加数据

    2. INSERT INTO n VALUES (1, 'tom', '23'), (2, 'john', '22');

    3. INSERT INTO n SELECT * FROM n; # 把数据复制一遍重新插入

    4. # 删除数据:DELETE FROM n WHERE id = 2;

    5. # 更改数据:UPDATE n SET name = 'tom' WHERE id = 2;

    6. # 数据查找 : SELECT * FROM n WHERE name LIKE '%h%';

    7. # 数据排序(反序) :SELECT * FROM n ORDER BY name, id DESC ;

    1. # 添加主键:ALTER TABLE n ADD PRIMARY KEY (id);

    2. # 删除主键:ALTER TABLE n DROP PRIMARY KEY ;

    3. # 添加外键

    4. ALTER TABLE m ADD FOREIGN KEY (id) REFERENCES n(id); # 自动生成键名m_ibfk_1

    5. ALTER TABLE m ADD CONSTRAINT fk_id FOREIGN KEY (id) REFERENCES n(id); # 使用定义的键名fk_id

    6. # 删除外键:ALTER TABLE m DROP FOREIGN KEY `fk_id`;

    7. # 修改外键:ALTER TABLE m DROP FOREIGN KEY `fk_id`, ADD CONSTRAINT fk_id2 FOREIGN KEY (id) REFERENCES n(id); # 删除之后从新建

    联接

    1. # 内联接:SELECT * FROM m INNER JOIN n ON m.id = n.id;

    2. # 左外联接 :SELECT * FROM m LEFT JOIN n ON m.id = n.id;

    3. # 右外联接:SELECT * FROM m RIGHT JOIN n ON m.id = n.id;

    4. # 交叉联接: SELECT * FROM m CROSS JOIN n; # 标准写法

    5. # 类似全连接full join的联接用法

    6. SELECT id,name FROM m

    7. UNION

    8. SELECT id,name FROM n;

    函数

      1. # 聚合函数

      2. SELECT count(id) AS total FROM n; # 总数

      3. SELECT sum(age) AS all_age FROM n; # 总和

      4. SELECT avg(age) AS all_age FROM n; # 平均值

      5. SELECT max(age) AS all_age FROM n; # 最大值

      6. SELECT min(age) AS all_age FROM n; # 最小值

      7. # 数学函数

      8. SELECT abs(-5); # 绝对值

      9. SELECT bin(15), oct(15), hex(15); # 二进制,八进制,十六进制

      10. SELECT pi(); # 圆周率3.141593

      11. SELECT ceil(5.5); # 大于x的最小整数值6

      12. SELECT floor(5.5); # 小于x的最大整数值5

      13. SELECT greatest(3,1,4,1,5,9,2,6); # 返回集合中最大的值9

      14. SELECT least(3,1,4,1,5,9,2,6); # 返回集合中最小的值1

      15. SELECT mod(5,3); # 余数2

      16. SELECT rand(); # 返回0到1内的随机值,每次不一样

      17. SELECT rand(5); # 提供一个参数(种子)使RAND()随机数生成器生成一个指定的值。

      18. SELECT round(1415.1415); # 四舍五入1415

      19. SELECT round(1415.1415, 3); # 四舍五入三位数1415.142

      20. SELECT round(1415.1415, -1); # 四舍五入整数位数1420

      21. SELECT truncate(1415.1415, 3); # 截短为3位小数1415.141

      22. SELECT truncate(1415.1415, -1); # 截短为-1位小数1410

      23. SELECT sign(-5); # 符号的值负数-1

      24. SELECT sign(5); # 符号的值正数1

      25. SELECT sqrt(9); # 平方根3

      26. SELECT sqrt(9); # 平方根3

      27. # 字符串函数

      28. SELECT concat('a', 'p', 'p', 'le'); # 连接字符串-apple

      29. SELECT concat_ws(',', 'a', 'p', 'p', 'le'); # 连接用','分割字符串-a,p,p,le

      30. SELECT insert('chinese', 3, 2, 'IN'); # 将字符串'chinese'从3位置开始的2个字符替换为'IN'-chINese

      31. SELECT left('chinese', 4); # 返回字符串'chinese'左边的4个字符-chin

      32. SELECT right('chinese', 3); # 返回字符串'chinese'右边的3个字符-ese

      33. SELECT substring('chinese', 3); # 返回字符串'chinese'第三个字符之后的子字符串-inese

      34. SELECT substring('chinese', -3); # 返回字符串'chinese'倒数第三个字符之后的子字符串-ese

      35. SELECT substring('chinese', 3, 2); # 返回字符串'chinese'第三个字符之后的两个字符-in

      36. SELECT trim(' chinese '); # 切割字符串' chinese '两边的空字符-'chinese'

      37. SELECT ltrim(' chinese '); # 切割字符串' chinese '两边的空字符-'chinese '

      38. SELECT rtrim(' chinese '); # 切割字符串' chinese '两边的空字符-' chinese'

      39. SELECT repeat('boy', 3); # 重复字符'boy'三次-'boyboyboy'

      40. SELECT reverse('chinese'); # 反向排序-'esenihc'

      41. SELECT length('chinese'); # 返回字符串的长度-7

      42. SELECT upper('chINese'), lower('chINese'); # 大写小写 CHINESE chinese

      43. SELECT ucase('chINese'), lcase('chINese'); # 大写小写 CHINESE chinese

      44. SELECT position('i' IN 'chinese'); # 返回'i'在'chinese'的第一个位置-3

      45. SELECT position('e' IN 'chinese'); # 返回'i'在'chinese'的第一个位置-5

      46. SELECT strcmp('abc', 'abd'); # 比较字符串,第一个参数小于第二个返回负数- -1

      47. SELECT strcmp('abc', 'abb'); # 比较字符串,第一个参数大于第二个返回正数- 1

      48. # 时间函数

      49. SELECT current_date, current_time, now(); # 2018-01-13 12:33:43 2018-01-13 12:33:43

      50. SELECT hour(current_time), minute(current_time), second(current_time); # 12 31 34

      51. SELECT year(current_date), month(current_date), week(current_date); # 2018 1 1

      52. SELECT quarter(current_date); # 1

      53. SELECT monthname(current_date), dayname(current_date); # January Saturday

      54. SELECT dayofweek(current_date), dayofmonth(current_date), dayofyear(current_date); # 7 13 13

      55. # 控制流函数

      56. SELECT if(3>2, 't', 'f'), if(3<2, 't', 'f'); # t f

      57. SELECT ifnull(NULL, 't'), ifnull(2, 't'); # t 2

      58. SELECT isnull(1), isnull(1/0); # 0 1 是null返回1,不是null返回0

      59. SELECT nullif('a', 'a'), nullif('a', 'b'); # null a 参数相同或成立返回null,不同或不成立则返回第一个参数

      60. SELECT CASE 2

      61. WHEN 1 THEN 'first'

      62. WHEN 2 THEN 'second'

      63. WHEN 3 THEN 'third'

      64. ELSE 'other'

      65. END ; # second

      66. # 系统信息函数

      67. SELECT database(); # 当前数据库名-test

      68. SELECT connection_id(); # 当前用户id-306

      69. SELECT user(); # 当前用户-root@localhost

      70. SELECT version(); # 当前mysql版本

    处在这个俗世,也得让自己变得更好吧
  • 相关阅读:
    saas 系统租户个性化域名&&租户绑定自己域名的解决方案(转)
    NGINX代理导致请求头header中的信息丢失问题
    Linux系统下查看硬件信息命令大全
    CentOS7开机时在进度条界面卡死(转)
    404 页面不存在
    Failed to set version to docker-desktop: exit code: -1
    centos 中Stream转 Image 报错
    CMM5级
    软件过程模型
    Some common used 3rd party packages for node cli app
  • 原文地址:https://www.cnblogs.com/butaileng7/p/13552192.html
Copyright © 2011-2022 走看看