产品经理日常工作中,需要了解用户使用产品的情况日活(DAU)/月活(MAU),了解某个页面某个按钮的点击率、转化率,或者开会需要汇报某些数据、指标,或者需要通过数据分析精细化运营方案,等等,这些工作就要求产品经理需要快速获取到产品数据。
如果产品经理能够熟练使用SQL语句对数据库进行增、删、改、查操作,可以提高工作效率,无需每次都去麻烦开发同学,自己一两分钟的事情,十分高效。
sql语言与MySQL、数据库之间的关系,这些概念之间的关系用下面这张图可以表达:
sql只是语言。企业常用的数据库有3类,分别是sql server、MySQL、oracle,三者都可用sql语言进行操作。MySQL安装简单,轻量,基本满足日常的使用和操作,适用范围比较广。
数据库:为某种目的而组织起来的记录和文件的集合。更通俗的理解,是由一张张表构成。
数据表:其实就是一个二维表,表中一列一列的就是字段。如下表:
数据库管理系统(DBMS):是指在计算机中对数据库进行定义、描述、建立、管理和维护的系统软件。我们日常说的MySQL、Oracle都属于数据库管系统。
怎么连接数据库? 我现在用的是 Navicat Premium 这款数据库管理工具,用它连接MySQL数据库后,可以从中看到各种数据的详细信息。 不同于mysql、sql server和Oracle等数据库,大概相当于,Navicat只是一个水龙头,而MySQL就是自来水供水系统。
找开发同学询问如何连接数据库,拿到地址、账号、密码、端口后等信息,填入下图:
连接数据库之后,在Navicat界面,我们主要关注的几个地方就是下图箭头标红的区域:
如果刚连接数据库,不熟悉表结构,不知道要查的数据存在哪个表里,直接问开发同学吧,集中询问或者换着人问都可以。
新增:insert into,向数据库表中插入、新增数据
查询:select,从数据库表中获取数据修改:update,更新、修改数据库表中的数据条件查询:where ,从数据库按规定标准查找数据条件查询:and…or… , 使用运算符对基于一个以上的条件查找数据删除:delete from(一般不涉及),从数据库表中删除数据注:删除和创建使用较少,一般,产品经理主要是对数据库进行查询和数据导出。
INSERT INTO 语句用于向表格中插入新的行。举例
INSERT INTO cc_clnt (clnt_type, Area) VALUES ('online', 'hk')
解释:在 cc_clnt 表中插入 clnt_type 为 online, Area 为 HK 2个值。
SELECT 语句用于从数据库中选取数据。举例:
select enty_seq from cc_clnt where clnt_id='0123456';
解释:在表 cc_clnt 中查找 clnt_id 为 0123456 的 enty_seq 值为多少。假设查询结果为 88888 。
Update 语句用于修改表中的数据。举例:
UPDATE cc_login SET PWD='123456' where enty_seq =83888;;
解释:修改 cc_login 表中 enty_seq 的值为 88888 这条记录的 PWD值为 123456
WHERE 子句用于提取那些满足指定标准的记录举例:
select enty_seq from cc_clnt where clnt_id='0123456';
解释:where后面的 “clnt_id 为 0123456 ” 就是规定条件,按照这个条件来查找enty_seq 值为多少 。
AND 和 OR 运算符用于基于一个以上的条件对记录进行过滤。举例:
SELECT * FROM Persons WHERE (FirstName='Thomas' OR FirstName='William')
AND LastName='Carter'
解释:在 Persons 表中查找firstname是 Thomas或者William ,且lastname为 Carter 的 值。
1)语句以英文 ;结尾(半角符号)2)不区分关键字的大小写,SQL 对大小写不敏感3)表名与列名不区分大小写4)输入符号的时候只能用英文5)列名不能加单引号