• mysql 心得


    1.我用的软件为 mysql5.7 和一个开发的mysql query browser,很好用,但是,对于较大的数据,该browser很容易崩溃,no responding.

       所以,这个时候,我常常选择mysql cmd。很nice。cmd中sql语句必须以;结尾。

    2.设备不能用,登不进去,往往要查看my.ini文件。然后从电脑上的services.msc中看一下mysql服务启动了没。

    3.多表查询,用inner join 其实和where差不多,都是笛卡尔乘积。两个表都特别大,查起来速度真的特别慢。

    自己实习时做的一个有关数据库的操作。电脑用cmd跑了将近12个小时才好。

    心得,在建表时,一定要考虑好结构等等。数据库也是一门艺术。

    4.在使用browser时,可以事先把sql语句写成一个script ,后缀为.sql  在browser 中打开即可。必须声明哪个数据库。use 'databasename'

    5.随时更新一些语法吧。

     A)查找数目

         select count(*) from table where ...                      其中,表可以用 db.tb 来表示。

     B)LIKE 很常用。对于字符串

         select...............................where 列 like ("% a % "  )

     C) 多表查询 

          select i.id,t.inchina 

      from test t,ip_data i

          where t.id=i.id

          group by i.inchina;

          select i.id,t.inchina

          form test t

          left join /inner join/right join

          on   t.id=i.id

      D)结果导出txt文件中

         select .......... into outfile "c:/A.txt"; 注意,该地址下的文件必须没有A.txt 否则报错

         再注意:今天导出,发现自己在windows系统该文件路径下看不到txt .再来一次,发现error,have existed.文件夹内也显示隐藏文件啊,怎么回事呢?

                    后来发现自己傻逼了。在windows系统下,路径用来表示,但是在mysql默认为转义符。这也就是我在error中看到的 c:a.txt已存在(txt名称中没有                   )的原因。路径要用/符号

       E)复制表

         1 create table a like users;         //复制表结构  a为空表。

         2  create table b select * from users  //数据也复制

       F) 清空表数据

           TRUNCATE TABLE '表名'

    6.数据库优化思路 optimize

       当数据量很大的时候,运行速度慢,需要优化

       way 1 。多台机器并行,速度几乎成倍提升,此时速度受 数据库服务器的限制,同时做出任务分配的机制。

       way 2 。分表。将一张大数据的表按一定方式分成几个小表存储,在小表中进行查询等操作。最后可以汇总结果

       way 3 。 索引。INDEX 不太懂 以后补充。mark

      

  • 相关阅读:
    Linux下如何查看版本信息
    SUSE12Sp3安装配置.net core 生产环境(2)-安装.NET Core 2.2.1 runtime 并运行.NET代码
    NET CORE Learning
    JWT(JSON Web Token)原理简介
    定性分析与定量分析的异同及优缺点
    《React16免费基础视频教程》【2】
    《React16免费基础视频教程》【1】
    《狂神说-JUC》【3】
    《狂神说-JUC》【2】
    《狂神说-JUC》【1】
  • 原文地址:https://www.cnblogs.com/karcylee/p/3432765.html
Copyright © 2020-2023  润新知