SQL数据库实战(含建表数据和查询案例)

Oracle数据库安装的时候会自带一个练习用数据库(其中包含employee表,后来版本中此表改名为emp);
首先在安装过程中应该有个选项“是否安装实例表”(完全安装模式下默认是选择的),需要选择才有此表;

此表归属于scott账户,scott用户默认口令为tiger
如果发现scott账户已过期(Oracle 10g中经常发生),或口令不正确,可以通过以下方法进行设置

--账户解锁  
alter user scott account unlock;  
--重设scott账户口令为tiger  
alter user scott identified by tiger;  

如果想通过这个例子练手,下面是对应的建表语句,读者可以自行创建数据库进行练习(特别是Mysql用户)。对应的练习题,网上有很多,在这里博主总结了一些教材中的案例由于练习,如有错误请指出。

建表语句:

附:实例表建表语句(适用于Oracle)

SET TERMOUT ON  
PROMPT Building demonstration tables. Please wait.  
SET TERMOUT OFF  DROP TABLE EMP;  
DROP TABLE DEPT;  
DROP TABLE BONUS;  
DROP TABLE SALGRADE;  
DROP TABLE DUMMY;  CREATE TABLE EMP  
(EMPNO NUMBER(4) NOT NULL,  
ENAME VARCHAR2(10),  
JOB VARCHAR2(9),  
MGR NUMBER(4),  
HIREDATE DATE,  
SAL NUMBER(7, 2),  
COMM NUMBER(7, 2),  
DEPTNO NUMBER(2));  INSERT INTO EMP VALUES  
(7369, 'SMITH', 'CLERK', 7902,  
TO_DATE('17-DEC-1980', 'DD-MON-YYYY'), 800, NULL, 20);  
INSERT INTO EMP VALUES  
(7499, 'ALLEN', 'SALESMAN', 7698,  
TO_DATE('20-FEB-1981', 'DD-MON-YYYY'), 1600, 300, 30);  
INSERT INTO EMP VALUES  
(7521, 'WARD', 'SALESMAN', 7698,  
TO_DATE('22-FEB-1981', 'DD-MON-YYYY'), 1250, 500, 30);  
INSERT INTO EMP VALUES  
(7566, 'JONES', 'MANAGER', 7839,  
TO_DATE('2-APR-1981', 'DD-MON-YYYY'), 2975, NULL, 20);  
INSERT INTO EMP VALUES  
(7654, 'MARTIN', 'SALESMAN', 7698,  
TO_DATE('28-SEP-1981', 'DD-MON-YYYY'), 1250, 1400, 30);  
INSERT INTO EMP VALUES  
(7698, 'BLAKE', 'MANAGER', 7839,  
TO_DATE('1-MAY-1981', 'DD-MON-YYYY'), 2850, NULL, 30);  
INSERT INTO EMP VALUES  
(7782, 'CLARK', 'MANAGER', 7839,  
TO_DATE('9-JUN-1981', 'DD-MON-YYYY'), 2450, NULL, 10);  
INSERT INTO EMP VALUES  
(7788, 'SCOTT', 'ANALYST', 7566,  
TO_DATE('09-DEC-1982', 'DD-MON-YYYY'), 3000, NULL, 20);  
INSERT INTO EMP VALUES  
(7839, 'KING', 'PRESIDENT', NULL,  
TO_DATE('17-NOV-1981', 'DD-MON-YYYY'), 5000, NULL, 10);  
INSERT INTO EMP VALUES  
(7844, 'TURNER', 'SALESMAN', 7698,  
TO_DATE('8-SEP-1981', 'DD-MON-YYYY'), 1500, 0, 30);  
INSERT INTO EMP VALUES  
(7876, 'ADAMS', 'CLERK', 7788,  
TO_DATE('12-JAN-1983', 'DD-MON-YYYY'), 1100, NULL, 20);  
INSERT INTO EMP VALUES  
(7900, 'JAMES', 'CLERK', 7698,  
TO_DATE('3-DEC-1981', 'DD-MON-YYYY'), 950, NULL, 30);  
INSERT INTO EMP VALUES  
(7902, 'FORD', 'ANALYST', 7566,  
TO_DATE('3-DEC-1981', 'DD-MON-YYYY'), 3000, NULL, 20);  
INSERT INTO EMP VALUES  
(7934, 'MILLER', 'CLERK', 7782,  
TO_DATE('23-JAN-1982', 'DD-MON-YYYY'), 1300, NULL, 10);  CREATE TABLE DEPT  
(DEPTNO NUMBER(2),  
DNAME VARCHAR2(14),  
LOC VARCHAR2(13) );  INSERT INTO DEPT VALUES (10, 'ACCOUNTING', 'NEW YORK');  
INSERT INTO DEPT VALUES (20, 'RESEARCH', 'DALLAS');  
INSERT INTO DEPT VALUES (30, 'SALES', 'CHICAGO');  
INSERT INTO DEPT VALUES (40, 'OPERATIONS', 'BOSTON');  CREATE TABLE BONUS  
(ENAME VARCHAR2(10),  
JOB VARCHAR2(9),  
SAL NUMBER,  
COMM NUMBER);  CREATE TABLE SALGRADE  
(GRADE NUMBER,  
LOSAL NUMBER,  
HISAL NUMBER);  INSERT INTO SALGRADE VALUES (1, 700, 1200);  
INSERT INTO SALGRADE VALUES (2, 1201, 1400);  
INSERT INTO SALGRADE VALUES (3, 1401, 2000);  
INSERT INTO SALGRADE VALUES (4, 2001, 3000);  
INSERT INTO SALGRADE VALUES (5, 3001, 9999);  CREATE TABLE DUMMY  
(DUMMY NUMBER);  INSERT INTO DUMMY VALUES (0);  COMMIT;  SET TERMOUT ON  
PROMPT Demonstration table build is complete.  EXIT  

实例建表语句(适用于MySQL)

DROP TABLE employee;  
DROP TABLE dept;  
DROP TABLE bonus;  
DROP TABLE salgrade;  
DROP TABLE dummy;  CREATE TABLE employee  
(  employeeno DECIMAL(4) NOT NULL,  ename VARCHAR(10),  job VARCHAR(9),  mgr DECIMAL(4),  hiredate DATE,  sal DECIMAL(7, 2),  comm DECIMAL(7, 2),  deptno DECIMAL(2)  
);  INSERT INTO employee VALUES  
(7369, 'SMITH', 'CLERK', 7902, '1980-12-17', 800, NULL, 20);  
INSERT INTO employee VALUES  
(7499, 'ALLEN', 'SALESMAN', 7698,'1981-2-20', 1600, 300, 30);  
INSERT INTO employee VALUES  
(7521, 'WARD', 'SALESMAN', 7698, '1981-2-22', 1250, 500, 30);  
INSERT INTO employee VALUES  
(7566, 'JONES', 'MANAGER', 7839, '1981-4-2', 2975, NULL, 20);  
INSERT INTO employee VALUES  
(7654, 'MARTIN', 'SALESMAN', 7698, '1981-9-28', 1250, 1400, 30);  
INSERT INTO employee VALUES  
(7698, 'BLAKE', 'MANAGER', 7839, '1981-5-1', 2850, NULL, 30);  
INSERT INTO employee VALUES  
(7782, 'CLARK', 'MANAGER', 7839, '1981-7-9', 2450, NULL, 10);  
INSERT INTO employee VALUES  
(7788, 'SCOTT', 'ANALYST', 7566, '1982-12-9', 3000, NULL, 20);  
INSERT INTO employee VALUES  
(7839, 'KING', 'PRESIDENT', NULL, '1981-11-17', 5000, NULL, 10);  
INSERT INTO employee VALUES  
(7844, 'TURNER', 'SALESMAN', 7698, '1981-9-8', 1500, 0, 30);  
INSERT INTO employee VALUES  
(7876, 'ADAMS', 'CLERK', 7788, '1983-1-12', 1100, NULL, 20);  
INSERT INTO employee VALUES  
(7900, 'JAMES', 'CLERK', 7698, '1981-12-3', 950, NULL, 30);  
INSERT INTO employee VALUES  
(7902, 'FORD', 'ANALYST', 7566, '1981-12-3', 3000, NULL, 20);  
INSERT INTO employee VALUES  
(7934, 'MILLER', 'CLERK', 7782, '1982-1-23', 1300, NULL, 10);  CREATE TABLE dept  
(deptno DECIMAL(2),  
dname VARCHAR(14),  
loc VARCHAR(13) );  INSERT INTO dept VALUES (10, 'ACCOUNTING', 'NEW YORK');  
INSERT INTO dept VALUES (20, 'RESEARCH', 'DALLAS');  
INSERT INTO dept VALUES (30, 'SALES', 'CHICAGO');  
INSERT INTO dept VALUES (40, 'OPERATIONS', 'BOSTON');  CREATE TABLE bonus  
(ename VARCHAR(10),  
job VARCHAR(9),  
sal DECIMAL,  
comm DECIMAL);  CREATE TABLE salgrade  
(grade DECIMAL,  
losal DECIMAL,  
hisal DECIMAL);  INSERT INTO salgrade VALUES (1, 700, 1200);  
INSERT INTO salgrade VALUES (2, 1201, 1400);  
INSERT INTO salgrade VALUES (3, 1401, 2000);  
INSERT INTO salgrade VALUES (4, 2001, 3000);  
INSERT INTO salgrade VALUES (5, 3001, 9999);  CREATE TABLE dummy  
(dummy DECIMAL);  INSERT INTO dummy VALUES (0);  

查询案例(MySQL版本)

查询1985年12月31日之前入职的员工姓名及入职日期。(注意日期的写法)
SELECT ename,hiredate FROM employee WHERE hiredate < '1985-12-31'查询部门编号不在10部门的员工姓名、部门编号。(这里的!=也可写作<>)
SELECT ename,deptno FROM employee WHERE deptno!=10;查询入职日期在82年至85年的员工姓名,入职日期.
SELECT ename,hiredate FROM employee WHERE hiredate BETWEEN '1982-1-01' AND '1985-12-31'查询部门编号为10或者20的员工姓名,部门编号。
SELECT ename,deptno 
from employee 
WHERE deptno=10 OR deptno=20;查询经理编号为7902 7566 7788的员工姓名,经理编号。#注意是圆括号
SELECT ENAme,mgr 
FROM employee 
WHERE mgr IN (7902,7566,7788)查询员工姓名以W开头的员工姓名。
SELECT ename 
from employee 
WHERE ename LIKE 'W%'查询员工姓名倒数第2个字符为T的员工姓名。
SELECT ename 
FROM employee 
WHERE ename LIke '%T_'查询奖金为空的员工姓名,奖金。
SELECT ename 
from employee 
WHERE comm IS NULL查询部门在10或者20,并且工资在3000到5000之间的员工姓名、部门、工资。
#注意逻辑运算符的优先级not>and>or,其次根据中文中的逻辑词来写。
SELECT ename,deptno,sal 
from employee 
WHERE (3000<=sal and sal<=5000)and(deptno=10 or deptno=20)查询入职日期在81年,并且职位不是SALES开头的员工姓名、入职日期、职位。
#注意对于字符串的比较不能采用运算符如!=等,需要用Like关键字等
SELECT ename,hiredate,job 
from employee 
where (hiredate BETWEEN '1981-1-01' AND '1981-12-31')and (job not LIKE 'SALES%')查询工资在2000-3000之间,部门不在10号的员工姓名,部门编号,工资,并按照部门升序 并按照部门升序,工资降序排序。
SELECT ename , deptno,sal 
from employee 
WHERE (sal BETWEEN 2000 and 3000) and (deptno!=10) 
ORDER BY deptno asc, sal DESC写一个查询,显示所有员工姓名,部门编号,部门名称。
#N张表至少要N-1个连接条件
SELECT ename,employee.deptno,dname 
from dept, employee 
where dept.deptno=employee.deptno;写一个查询,显示所有工作在CHICAGO并且奖金不为空的员工姓名,工作地点,奖金
select ename,loc,comm
from employee,dept
WHERE employee.deptno=dept.deptno and ((loc='CHICAGO') and (comm is not NULL))查询每个员工的姓名和直接上级姓名?
SELECT A.ename worker,B.ename boss
FROM employee A INNER JOIN employee B 
ON  A.mgr=B.employeeno查询所有工作在NEW YORK和CHICAGO的员工姓名,员工编号,以及他们的经理姓名,经理编号。
#from什么join什么的,可以看做是一张表(其实就是一张复杂的表)。下面接着用正常的语法就可以了。
SELECT A.ename workName,A.employeeno workNum,B.ename bossName,B.employeeno BossNum,loc
from employee A 
JOIN employee B 
ON A.mgr=B.employeeno
JOIN dept C
on A.deptno=C.deptno
where loc IN ('NEW YORK','CHICAGO')查询所有员工编号,姓名,部门名称,包括没有部门的员工也要显示出来。
SELECT A.ename ,A.employeeno,B.dname 
FROM employee A 
LEFT JOIN dept B 
ON A.deptno=B.deptno;创建一个员工表和部门表的交叉连接。
SELECT count(*) 
from employee A 
CROSS JOIN dept B使用USING子句,显示工作在CHICAGO的员工姓名,部门名称,工作地点
#using可以作为一个连接条件使用(直接将两张表的公有属性声明在using中)
SELECT ename,dname,loc 
from employee A 
join dept B 
USING (deptno) 
WHERE B.loc='CHICAGO'使用ON子句,显示工作在CHICAGO的员工姓名,部门名称,工作地点,薪资等级
SELECT ename,dname,loc,grade 
from employee A 
join dept B 
on A.deptno=B.deptno 
join salgrade C 
WHERE A.sal BETWEEN C.losal and C.hisal;使用左连接,查询每个员工的姓名 查询每个员工的姓名,经理姓名,没有经理的King也要显示出来。
SELECT A.ename worker,B.ename boss 
from employee A 
LEFT JOIN employee B 
on A.mgr=B.employeeno查询每个部门的部门编号,部门名称,部门人数,最高工资,最低工资,工资总和,平均工资。
#注意声明你是以那张表的deptno作为分组的条件的(表不同,结果也不同)
SELECT employee.deptno,dname,count(DISTINCT employeeno),MAX(sal),MIN(sal),SUM(sal),AVG(sal) 
from employee,dept
GROUP BY employee.deptno查询每个经理所管理的人数,经理编号,经理姓名,要求包括没有经理的人员信息。
SELECT count(DISTINCT A.employeeno),B.ename,B.employeeno
from employee A 
LEFT JOIN employee B 
on A.mgr=B.employeeno 
GROUP BY A.mgr#不能在 WHERE子句中限制组,可以通过 HAVING 子句限制组(经典错题)、
#原因:根据sql执行顺序,先从where中得到限制条件,然后才执行goupBy语句,之后才执行having语句
如果再where中直接进行一个限制组的操作,那么后续的group将没有任何意义(毕竟都是分区排序先分区再排序)
1 SELECT deptno, max(sal)
2 FROM emp
3 WHERE max(sal) > 2900
4 GROUP BY deptno;
*
ERROR at line 3:
ORA-00934: group function is not allowed here
*查询部门人数大于2的部门编号,部门名称,部门人数。
SELECT B.deptno,dname,COUNT(DISTINCT employeeno)
from dept A,employee B
where A.deptno=B.deptno
GROUP BY B.deptno
HAVING count(DISTINCT employeeno)>2查询部门平均工资大于2000,且人数大于2的部门编号,部门名称,部门人数,部门平均工资
,并按照部门人数升序排序。
SELECT B.deptno,dname,COUNT(DISTINCT employeeno),AVG(sal)
from dept A,employee B
where A.deptno=B.deptno
GROUP BY B.deptno
HAVING count(DISTINCT employeeno)>2 and AVG(sal)>2000
ORDER BY count(DISTINCT employeeno) ASC查询工资比Jones工资高的员工信息?
SELECT * 
from employee 
WHERE sal >(SELECT sal 
from employee 
WHERE ename='Jones')查询工资最低的员工姓名?
SELECT ename 
from employee 
WHERE sal in (SELECT min(sal) 
from employee)查询入职日期最早的员工姓名,入职日期(分成两步查询,第一步查询基本属性,第二步查询最早入职的日期。子查询结果对应的行就是主查询需要的数据)
SELECT ename, hiredate 
from employee 
where hiredate=
(SELECT min(hiredate) 
from employee)查询工资比SMITH工资高并且工作地点在CHICAGO的员工姓名,工资,部门名称
SELECT ename,sal,dname 
from employee A,dept B 
WHERE A.deptno=B.deptno 
and sal >(SELECT sal 
from employee 
WHERE ename='SMITH' )AND loc ='CHICAGO'查询部门人数大于所有部门平均人数的的部门编号,部门名称,部门人数(重点看,一定要注意表的连接条件)
SELECT A.deptno,dname,count(DISTINCT employeeno) 
from employee A,dept B
WHERE A.deptno=B.deptno
GROUP BY A.deptno
HAVING COUNT(employeeno) > 
(SELECT count(ename)/count(DISTINCT deptno) from employee)查询入职日期比10部门任意一个员工晚的员工姓名、入职日期,不包括10部门员工
SELECT ename,hiredate,deptno 
from employee 
WHERE hiredate >ANY(SELECT hiredate 
from employee 
WHERE deptno=10 ) 
AND deptno!=10查询入职日期比10部门所有员工晚的员工姓名、入职日期,不包括10部门员工
SELECT ename,hiredate,deptno 
from employee 
WHERE hiredate > all(SELECT hiredate 
from employee 
WHERE deptno=10 ) AND deptno!=10查询职位及经理和10部门任意一个员工职位及经理相同的员工姓名,职位,不包括10部门员工
#注意可以多属性匹配
SELECT  ename, job 
FROM employee 
WHERE (job ,mgr) in (SELECT job,mgr 
FROM employee 
WHERE deptno=10) AND deptno !=10向部门表新增一个部门,部门编号为50,部门名称为HR,工作地点为SY。
INSERT INTO dept 
VALUES(50,'HR','SY')把员工编号为7782的部门编号修改为20 
UPDATE emp
SET deptno = 20
WHERE empno = 7782;删除职位是CLERK的员工记录
DELETE FROM emp
WHERE job = 'CLERK'; INSERT into manegers 
SELECT *  from  employee WHERE job ='MANAGER'

总结

SQL对于大数据来说非常重要,所以这项技能一定要精通。后续会再回顾下SQL,然后把一些重要的知识点总结出来。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/456745.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Django中的核心思想ORM---元类实现ORM

1. ORM是什么 ORM 是 python编程语言后端web框架 Django的核心思想&#xff0c;“Object Relational Mapping”&#xff0c;即对象-关系映射&#xff0c;简称ORM。 一个句话理解就是&#xff1a;创建一个实例对象&#xff0c;用创建它的类名当做数据表名&#xff0c;用创建它…

移动互联网广告 - 第十更 - 广告投放运营 DashBoard - 2016/12/10

广告投放运营 DashBoard设计 移动互联网互联网广告投放&#xff0c;数据监控DashBoard&#xff0c;基础样例示意&#xff0c;下图仅供参考&#xff08;来自于互联网&#xff09;。 转载于:https://www.cnblogs.com/pythonMLer/p/6154700.html

微信小程序中使用emoji表情相关说明

2019独角兽企业重金招聘Python工程师标准>>> 本帖将聚合一些跟emoji表情有关的知识&#xff1b;相关文章&#xff1a;“i爱记账” 小程序后端开发小结 第7条经验前端传过来的昵称和备注信息一定要经过严格的正则表达式过滤&#xff0c;放置出现XSS等攻击&#xff0c…

java.lang.IllegalArgumentException: Does not contain a valid host:port authority: ignorethis

执行Hive语句运行MapReduce程序时突然出现这样的异常&#xff1a; Total MapReduce jobs 1 Launching Job 1 out of 1 Number of reduce tasks not specified. Estimated from input data size: 1 In order to change the average load for a reducer (in bytes):set hive.ex…

Oracle基础语句

1、创建表create table IT_EMPLOYEES(ENPLOYEES_ID NUMBER(6) NOT NULL UNIQUE,FIRST_NAME VARCHAR2(20),LAST_NAME VARCHAR2(25) NOT NULL,EMAIL VARCHAR2(25),PHONE_NUMBER VARCHAR2(20),JOB_ID VARCHAR2(10),SALARY NUMBER(8,2),MANAGER_ID NUMBER(6));2、--创建索引&#x…

Linux三剑客之grep 与 egrep

grep&#xff1a;Linux上文本处理三剑客1 grep&#xff1a;文本过滤(模式&#xff1a;pattern)工具; *&#xff08;grep, egrep, fgrep&#xff09; 2 sed&#xff1a;stream editor&#xff0c;文本编辑工具&#xff1b; 3 awk&#xff1a;Linux上的实现gawk&#xff0c;文本报…

WSGI直观形象的了解一下

1. 浏览器请求动态页面过程 2. WSGI 怎么在你刚建立的Web服务器上运行一个Django应用和Flask应用&#xff0c;如何不做任何改变而适应不同的web架构呢&#xff1f; 在以前&#xff0c;选择 Python web 架构会受制于可用的web服务器&#xff0c;反之亦然。如果架构和服务器可以…

安装Hbase(分布式)遇到一些问题及解决方法

问题一&#xff1a;安装完成后在Hbase shell 命令行执行list命令时&#xff0c;爆出如下错误&#xff1a; hbase(main):001:0> list TABLE …

安装MySql卡在Start Service的问题

我的情况&#xff1a;之前在windows下安装过5.6版本&#xff0c;卸载后&#xff0c;现在安装5.7版本&#xff0c;然后卡在Start Service这里&#xff0c;log日志没报任何错误&#xff0c;后来经过不断的尝试各种网上的办法终于把问题解决了。 问题的原因就是当初卸载5.6版本时…

学习进度条11

第十三周 日期 星期一 星期二 星期三 星期四 星期五 星期六 所花时间&#xff08;包括上课&#xff09; 19:10-22:20 (编程河北省科技信息通用调查系统) 8:00-10:00 (上课) 18:30-21:00 (Oracle实验) 14:00-16:30 (编程河北省科技信息通用调查系统) 18:20-22:30 (编…

Python面向切面编程是什么

简而言之就是装饰器 https://blog.csdn.net/qq_41856814/article/details/90146293

hibernate实现多变联合查询

Hibernate主要支持两种查询方式&#xff1a;HQL查询和Criteria查询。前者应用较为广发&#xff0c;后者也只是调用封装好的接口。 现在有一个问题&#xff0c;就是实现多表连接查询&#xff0c;且查询结果集不与任何一个实体类对应&#xff0c;怎么解决呢&#xff1f; 举个例子…

PyCharm光标变粗的解决办法

pycharm中光标变粗&#xff0c;如下&#xff1a; 此时变成了改写模式&#xff0c;只需要按下键盘的insert键即可 转载于:https://www.cnblogs.com/uglyliu/p/6159839.html

SparkRDD常用算子实践(附运行效果图)

目录1、简单算子说明2、复杂算子说明 目录 SparkRDD算子分为两类&#xff1a;Transformation与Action. Transformation&#xff1a;即延迟加载数据&#xff0c;Transformation会记录元数据信息&#xff0c;当计算任务触发Action时&#xff0c;才会真正开始计算。 Action&am…

six库是什么

Utilities for writing code that runs on Python 2 and 3”“” 它是一个专门用来兼容 Python 2 和 Python 3 的库。它解决了诸如 urllib 的部分方法不兼容&#xff0c; str 和 bytes 类型不兼容等“知名”问题。

Kali-linux使用Nessus

Nessus号称是世界上最流行的漏洞扫描程序&#xff0c;全世界有超过75000个组织在使用它。该工具提供完整的电脑漏洞扫描服务&#xff0c;并随时更新其漏洞数据库。Nessus不同于传统的漏洞扫描软件&#xff0c;Nessus可同时在本机或远端上遥控&#xff0c;进行系统的漏洞分析扫描…

HDFS读写数据的原理

目录1 概述2 HDFS写数据流程3 HDFS读数据流程 目录 最近由于要准备面试&#xff0c;就把之前学过的东西好好整理下&#xff0c;权当是复习。 下面说下HDFS读写数据的原理。 1 概述 HDFS集群分为两大角色&#xff1a;NameNode、DataNode NameNode负责管理整个文件系统的元数…

理解列存储索引

版权声明&#xff1a;原创作品&#xff0c;谢绝转载&#xff01;否则将追究法律责任。 优点和使用场景 SQL Server 内存中列存储索引通过使用基于列的数据存储和基于列的查询处理来存储和管理数据。 列存储索引适合于主要执行大容量加载和只读查询的数据仓库工作负荷…

Django项目部署到阿里云服务器上无法发送邮件STMP

部署好项目之后发送邮件无法发送&#xff0c;多方查阅之后&#xff0c;解决问题。 阿里云服务器禁用了25端口&#xff0c;导致无法发送邮件。 25端口申请开放的难度很大&#xff0c;直接放弃。 解决&#xff1a; 在 django项目的 settings.py文件中x修改port端口 。

美国诚实签经验——IMG全球医疗险,TODO

那么&#xff0c;诚实签最关键的4个要点 是什么呢&#xff1f; 第一&#xff0c;证明你有一定的经济实力。 可能需要房产、存款等证明&#xff0c;也需要银行信用卡或借记卡半年流水证明&#xff08;让人信服的每月进帐和消费能力&#xff09;。 这些是为了证明&#xff0c;你可…