当前位置: 首页 > news >正文

外贸网站做开关行业的哪个好北京首页关键词优化

外贸网站做开关行业的哪个好,北京首页关键词优化,建筑公司企业愿景怎么写,慈溪市网站建设MySQL语言汇总[DQL,DDL,DCL,DML] SQL分类1.DDL:操作数据库#xff0c;表创建 删除 查询 修改对数据库的操作对表的操作复制表#xff08;重点#xff09;#xff01;#xff01;#xff01;#xff01;#xff01; 2.DML:增删改表中数据3.DQL#xff1a;查询表中的记录… MySQL语言汇总[DQL,DDL,DCL,DML] SQL分类1.DDL:操作数据库表创建 删除 查询 修改对数据库的操作对表的操作复制表重点 2.DML:增删改表中数据3.DQL查询表中的记录语法顺序基础查询where 子句后面跟的条件if 和 case when语句字符串函数拼接聚合函数分组查询分页查询 limit 4.DCL 管理用户授权1.管理用户添加删除修改查询用户 2.权限管理查询权限授予权限撤销权限 5.多表查询子查询约束主键约束外键约束 6.用Python连接数据库进行调用和操作安装第三方模块pymysql操作MySQL练习 SQL分类 1.DDL:操作数据库表 创建 删除 查询 修改 对数据库的操作 # 创建数据库 create database 数据库名称; # 查询数据库和表名 show databases; show tables; # 查看数据库的建库语句 表的建表语句 show create database 数据库名称; show create table 表名称; # 删除数据库 drop database 数据库名称; # 使用数据库 use 数据库名称; # 查看当前正在使用的数据库名称 select database(); # 修改数据库的字符集 alter database db4 character set utf8;对表的操作 完整的建表语句 # 创建一个表 create table 表名(列名1 数据类型1列名2 数据类型2......列名3 数据类型n ); # 查询表 show tables; # 查看表结构 show create table 表名; # 修改表名 rename table 表名 to 新表名; alter table 表名 rename to 新表名; # 修改表的字符集 alter table 表名 character set 字符集名称; # 查看某张表的字符集 show create table 表名; # 添加一列 alter table 表名 add 列名 数据类型; # 修改列名称 类型 alter table 表名 change 列名 新列名 新数据类型; alter table 表名 modify 列名 新数据类型; # 删除列alter table 表名 drop 列名; # 删除表 drop table 表名;复制表重点 -- 复制表的结构 create table if not exists 表名 like 被复制的表名; -- 新建一个查询表的内容 create table if not exists 表名 as select语句;这个方法 就是把一个你想要的临时表变成一个表 保存起来非常好用 2.DML:增删改表中数据 # 向表中添加数据 insert into 表名 (列名1列名2列名3......,列名n) values(值1,值2,......值n); # insert select 将select查询出来的数据插入到目标表中 insert into 表名 select语句;# 删除数据 delete from 表名 [where条件]; 如果没有where条件则是删除这个表中的所有记录 如果行删除所有记录推荐使用 truncate table 表名; 截断表 删除这个表在重新创建# 修改数据 update 表名 set 列名1 值1,列名2 值2,......[where条件]; 如果不加where条件则是全部修改 3.DQL查询表中的记录 语法顺序 select字段列表 from表名列表 where条件列表 group by分组字段 having分组之后的条件 order by排序 limit分页限定基础查询 # 多个字段的查询 select 字段名1字段名2... from 表名; 去除重复distinct 去除重复的数据 全部去重# select 列的时候可以添加一些四则运算法则 select age 4 as new_age from student;# 排序查询 order by 排序字段1 排序方式1排序字段2 排序方式2...; DESC降序 where 子句后面跟的条件 、、、、、 可以用符号表示 大于小于 BETWEEN...AND 在这两个条件之间 是左闭右闭的区间 IN(集合) -- 集合可以写成子查询 但是结果应该只有一列 LIKE模糊查询_:单个任意字符%多个任意字符 IS NULL IS NOT NULL count(字段名) 时注意null的列 注意 null 和 空字符串 的区别 null是什么都没有 这是空的字符串 是有东西的 and or not # 举例 SELECT * FROM student WHERE age 20; SELECT * FROM student WHERE age 20; SELECT * FROM student WHERE age 20; SELECT * FROM student WHERE age ! 20; SELECT * FROM student WHERE age 20; SELECT * FROM student WHERE age 20 age 30; SELECT * FROM student WHERE age 20 AND age 30; SELECT * FROM student WHERE age BETWEEN 20 AND 30; SELECT * FROM student WHERE age22 OR age20 OR age25; SELECT * FROM student WHERE age IN(22,18,55); SELECT * FROM student WHERE english IS NOT NULL; SELECT * FROM student WHERE NAME LIKE 马%; # 匹配姓马的 SELECT * FROM student WHERE NAME LIKE _化%; #匹配名字第二个是化的 SELECT * FROM student WHERE NAME LIKE ___; ## 匹配名字是三个的学生 SELECT * FROM student WHERE NAME LIKE %景% show variables like %char%if 和 case when语句 -- if(condition,true_act,false_act) 函数 case when 的写法# 条件 true false select *,IF(age 22,old,young) as age_type from students; # if 语句嵌套 select *,IF(age 22,# 年龄22 并且23 false 是年龄22 但是23if(age23,big old,little old),young) as age_type from students;# case when 语句 用end 结尾 select *,case when age22 then youngwhen age23 then little oldwhen age24 then big oldelse little young end as typefrom students;字符串函数拼接 -- 字符串函数 -- 字符串拼接 -- concat(*strs) 如果字符串中有null 结果就是null select CONCAT(name,,,gender,,,a) from students; # 将这些字符串合并起来成为一个 select CONCAT(name,gender,a,null) from students; -- CONCAT_WS(separator,str1,str2,...) 中间有分隔符 他会过滤null select CONCAT_WS(,,name,gender,a,null,b) from students;-- 字符串切分 -- SUBSTR(str FROM pos FOR len) , SUBSTR(str,pos),SUBSTR(str,pos,len) select *,SUBSTR(name,2) from students; # 切分前两个 select *,SUBSTR(name,1,2) from students; # 从第一个开始 切两个 select *,SUBSTR(name from 1 for 2) from students; select *,SUBSTRING(name,1,2) from students;-- STRCMP 字符串对比 select *,STRCMP(SUBSTR(name,1,1),施) from students; # 切分第一个姓氏过后 与‘施’对比 选择施姓的 -- 数字类型的函数 select *,ABS(age),COS(age),LENGTH(clazz) from students;聚合函数 将一列数据作为一个整体进行纵向的计算 注意聚合函数的计算排除null值可使用ifnull函数# max:计算最大值 SELECT MAX(math) FROM student;# min:计算最小值 SELECT MIN(math) FROM student;# sum:计算和 SELECT SUM(english) FROM student;# avg:计算平均值 SELECT AVG(math) FROM student;分组查询 语法group by 分组字段 1.分组之后查询的字段分组字段、聚合函数 2.where和having的区别 ​ where在分组之前进行限定如果不满足条件则不参与分组。 ​ having在分组之后进行限定如果不满足结果则不会被查询出来 ​ where后不可以跟聚合函数having可以进行聚合函数的判断# 按照性别分组分别查询男、女同学的平均分 SELECT sex,AVG(math) FROM student GROUP BY sex;# 按照性别分组分别查询男、女同学的平均分人数 SELECT sex,AVG(math),COUNT(id) FROM student GROUP BY sex;# 按照性别分组分别查询男、女同学的平均分人数 要求分数不低于70分的人不参与分组。 SELECT sex,AVG(math),COUNT(id) FROM student WHERE math70 GROUP BY sex;# 按照性别分组分别查询男、女同学的平均分人数 要求分数不低于70分的人不参与分组分组之后人数大于2人。 SELECT sex,AVG(math),COUNT(id) FROM student WHERE math70 GROUP BY sex HAVING COUNT(id)2; 分页查询 limit 开始的索引 当前的页码 -1 * 每页显示的条数 SELECT * FROM student LIMIT 0,3; 第一页 SELECT * FROM student LIMIT 3,3; 第二页 SELECT * FROM student LIMIT 6,3; 第三页4.DCL 管理用户授权 1.管理用户 添加删除修改查询用户 关闭密码复杂验证 set global validate_password_policy0; set global validate_password_length1;# 用root用户添加一个新用户 CREATE USER 用户名主机名 IDENTIFIED BY 密码; 例子 CREATE USER zhangsanlocalhost IDENTIFIED BY 123; CREATE USER lisi% IDENTIFIED BY 123;# 删除用户 DROP USER 用户名主机名; 例子 DROP USER zhangsanlocalhost;# 修改用户密码 SET PASSWORD FOR 用户名主机名 PASSWORD(新密码); 例子 set password for lisi% password(234567);# 查询用户 USE mysql; select * from user; 通配符 % 表示可以在任意主机使用用户登录数据库 2.权限管理 查询权限 SHOW GRANTS FOR 用户名主机名;SHOW GRANTS FOR lisi%;授予权限 grant 权限列表 on 数据库名.表名 to 用户名主机名 [with grant option];例子 -- 将数据库db3下account表的SELECT ,DELETE, UPDATE权限授予用户lisi% GRANT SELECT ,DELETE, UPDATE ON db3.account TO lisi%;-- 给zhangsan用户所有权限 GRANT ALL ON *.* TO zhangsanlocalhost撤销权限 revoke 权限列表 on 数据库名.表名 from 用户名主机名;例子 -- 将用户lisi%对于表db3.account的更新权限撤销 REVOKE UPDATE ON db3.account FROM lisi%;-- 给lisi用户撤销所有权限 REVOKE ALL ON *.* FROM lisi%;5.多表查询 内连接 左连接 外连接 子查询 查询中嵌套查询称嵌套查询为子查询 -- 查询工资最高的员工信息 -- 1.查询最高的工资是多少 9000 SELECT MAX(salary) FROM emp; -- 2.查询员工信息并且工资等于9000的 SELECT * FROM emp WHERE emp.salary9000; -- 一条sql就完成这个操作 SELECT * FROM emp WHERE emp.salary (SELECT MAX(salary) FROM emp);--子查询可以作为条件使用运算符去判断。 运算符 --查询员工工资小于平均工资的人 SELECT * FROM emp WHERE emp.salary (SELECT AVG(salary) FROM emp);--子查询可以作为集合使用in、not int --查询财务部和市场部所有员工信息 SELECT id FROM dept WHERE NAME财务部 OR NAME市场部; SELECT * FROM emp WHERE dept_id3 OR dept_id2; --使用子查询 SELECT * FROM emp WHERE dept_id in (SELECT id FROM dept WHERE NAME财务部 OR NAME市场部);--子查询可以作为一张虚拟表参与查询 --查询员工入职日期是2011-11-11日之后的员工信息和部门信息 -- 子查询 select * from dept t1 (select * from emp where emp.join_date 2011-11-11) t2 where t1.id t2.dept_id; --普通内连接查询 select * from emp t1,dept t2 where t1.dept_id t2.id and t1.join_date 2011-11-11 union 表的拼接 但是拼接时表的结构需要完全相同 * union 对数据进行去重 * union all约束 主键约束 需要记住的为主键约束 条件 唯一 且非空 primary key 含义非空且唯一 主键就是表中记录的唯一标识 CREATE TABLE stu (id INT PRIMARY KEY, -- 给id添加主键约束NAME VARCHAR(20) );ALTER TABLE stu DROP PRIMARY KEY; -- 去除主键 alter table stu modify id int; -- 移除not null的限约束ALTER TABLE stu MODIFY id INT PRIMARY KEY; 外键约束 还有一个外键约束 foreign key让表与表产生关系从而保证数据的正确性。 create table 表名(外键列constraint 外键名称 foreign key (外键列名称) references 主表名称(主表列名称) );添加级联操作 ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY(外键列名称) REFERENCES 主表名称主表列名称 ON UPDATE CASCADE ON DELETE CASCADE;当修改一个表的值之后 另一个表的值也会修改 保证了数据的正确性6.用Python连接数据库进行调用和操作 安装第三方模块pymysql pip install pymysql 操作MySQL import pymysql# 创建连接 # 需要传入一些参数 # host mysql所在的主机名或者是域名或者是ip地址 # port mysql运行的端口号 # ps -aux | grep mysql 找到MySQL运行的进程号 # netstat -tnlp | grep mysql的进程号 找到MySQL的端口 # user 用户名 # passwd 密码 # db 指定要操作的数据库 conn pymysql.connect(hostmaster, port3306, userroot, passwd123456,dbstu_test)# 创建游标cursor cur conn.cursor() # cur.execute(use stu_test) # 切换数据库 # 准备SQL语句 sql_str1 SELECT t1.sid,t1.sname,t2.score from (SELECT sid,snamefrom Studentwhere sid in (select t1.sidfrom (SELECT sid,scorefrom SCwhere cid 01) t1 left join (SELECT sid,scorefrom SCwhere cid 02) t2 on t1.sid t2.sidwhere t1.score ifnull(t2.score,0)) ) t1 left join SC t2 on t1.sid t2.sid # 执行SQL语句 cur.execute(sql_str1)# 如果有返回值 可以通过cursor进行获取 print(cur.fetchone()) # 获取一条数据 print(# * 50) print(cur.fetchall()) # 获取所有数据 print(# * 50) print(cur.fetchmany(10)) # 获取指定大小的数据数据# 如果没有返回值看后续自己处理# 练习 import pymysql # 创建一个链接对象 conn pymysql.connect(hostmaster, userroot, password123456, port3306) # 创建游标 cur conn.cursor() cur.execute(use stu) sql select * from students cur.execute(sql) # 获取数据 print(cur.fetchone()) # fecthall 获取全部数据 元组内嵌套元组 for tu in cur.fetchall():id tu[0]name tu[1]age tu[2]gender tu[3]clazz tu[4]# print(id,name,age,gender,clazz) conn.close()# 向数据库中插入数据 import pymysql # 获取students.txt的文件数据 # id 1500100001 # name 施笑 # age 23 # gender 女 # clazz 文科六班 with open(../data/student.txt, r, encodingutf-8) as fp:line_list fp.readlines()# print(line_list) new_list [] for info in line_list:splits info.split(,)new_list.append((splits[0], splits[1], splits[2], splits[3], splits[4])) print(new_list)# 创建一个链接对象 # conn pymysql.connect(hostmaster, userroot, password123456, port3306, dbstu) # 创建游标 # cur conn.cursor()# 使用with的方式打开mysql链接 with pymysql.connect(hostmaster, userroot, password123456, port3306, dbstu) as conn:with conn.cursor() as cur:# insert sql# 注意引号的问题# insert_sql finsert into student() values({id},{name},{age},{gender},{clazz})insert_many insert into student() values(%s,%s,%s,%s,%s)# insert_sql insert into student() values(%d,%s,%d,%s,%s) % (id, name, age, gender, clazz)# select_sql select * from students where age f{age} or 11# print(insert_sql)# cur.execute(insert_sql)# executemany 不需要在字符串加 单引号try:cur.executemany(insert_many, new_list)except Exception as e:# 回滚事件conn.rollback()else:# print(cur.fetchall())# 提交事务conn.commit()
http://www.dnsts.com.cn/news/1929.html

相关文章:

  • 自制网站除了购买域名还要怎么做提升网页优化排名
  • 北京手机站建站爱站网关键词查询系统
  • 践行新使命忠诚保大庆网站建设重庆seo务
  • 邮箱登陆嵌入网站百度广告太多
  • 做网站 设备郑州优化公司有哪些
  • 电子商务网站开发技术免费推广软件
  • 企业建设网站公司简介网上有免费的网站吗
  • 海洋公司做网站推广游戏推广论坛
  • 网站手册网站快速收录
  • 泉州企业自助建站系统网络营销的概念和特征
  • 网站设计与开发实例seo中文意思是
  • 做类似交易猫的网站静态网页制作
  • 北京大型网站建设免费制作网站的软件
  • 网站使用的语言独立网站和平台网站
  • 手机运用网站篮网最新消息
  • 营销网站建设公司排名推广app赚佣金平台有哪些
  • 网站建设总体情况群发软件
  • 现在都不用dw做网站了吗百度pc端首页
  • 好的网站特点推广联盟平台
  • 电子商务网站管理内容seo招聘网
  • 有哪些做分析图用的网站网络推广宣传方式
  • 网站支付平台是怎么做的北京度seo排名
  • 如何用api做网站厦门seo报价
  • 淄博网站建设电话咨询百度pc版网页
  • 素材网站建设需要多少费用谷歌浏览器网页版在线
  • 网站建设方案案例seo整站优化新站快速排名
  • 学做网站设计需要多少钱百度关键词排名优化工具
  • 网站全新改版如何做成都私人网站制作
  • 做网站哪个行业比较有前景做营销策划的公司
  • 温州网站建设方案报价竞价推广培训课程