【miniob】JOIN TABLE DEBUG

pro1

INSERT INTO join_table_1 VALUES (4, '16a'); Select * from join_table_1 inner join join_table_2 on join_table_1.name<join_table_2.age and join_table_1.id=join_table_2.id; + failed to receive response from observer. reason=Failed to receive from server. poll return POLLHUP=16 or POLLERR=str(event & select.POLLERR) failed to receive response from observer. reason=Failed to receive from server. poll return POLLHUP=16 or POLLERR=str(event & select.POLLERR)

就是对于表达式当中的比较类型,如果不一致的话,一开始是没考虑,后面是直接返回类型不一致的报错,但是没过,看别人的思路,应该就是要进行强转比较


就是当类型不可比的时候,如何处理?

char为什么能转换成double?是否能转为Int或其它类型?

subpro1

这个就是在.h文件中,就不用再声明类名前缀了

将Value::去掉即可

subpro2

就是运行以下make clean,清理一下缓存

subpro3

这个很抽象的一点是代码内部自己定义了一个string,和std::string不一样(?

但确实不太理解之间的区别

用.c_str()就能正常打印和输出了

test

大数据

select * from join_table_large_1

inner join join_table_large_2 on join_table_large_1.id=join_table_large_2.id

inner join join_table_large_3 on join_table_large_1.id=join_table_large_3.id

inner join join_table_large_4 on join_table_large_3.id=join_table_large_4.id

inner join join_table_large_5 on 1=1

inner join join_table_large_6 on join_table_large_5.id=join_table_large_6.id

where

join_table_large_3.num3 <10

and

join_table_large_5.num5>90;

select * from join_table_large_1 inner join join_table_large_2 on join_table_large_1.id=join_table_large_2.id inner join join_table_large_3 on join_table_large_1.id=join_table_large_3.id inner join join_table_large_4 on join_table_large_3.id=join_table_large_4.id inner join join_table_large_5 on 1=1 inner join join_table_large_6 on join_table_large_5.id=join_table_large_6.id where join_table_large_3.num3 <10 and join_table_large_5.num5>90;

select * from join_table_1 inner join join_table_2 on 1=1

select * from join_table_large_5

CREATE TABLE join_table_1(id int, name char);

INSERT INTO join_table_1 VALUES (1, 'a');

INSERT INTO join_table_1 VALUES (2, 'b');

CREATE TABLE join_table_2(id int, num int);

INSERT INTO join_table_2 VALUES (1, 2);

INSERT INTO join_table_2 VALUES (2, 15);

create table join_table_large_1(id int, num1 int);

create table join_table_large_2(id int, num2 int);

create table join_table_large_3(id int, num3 int);

create table join_table_large_4(id int, num4 int);

create table join_table_large_5(id int, num5 int);

create table join_table_large_6(id int, num6 int);

insert into join_table_large_1 values(1, 1);

insert into join_table_large_1 values(2, 2);

insert into join_table_large_1 values(3, 3);

insert into join_table_large_1 values(4, 4);

insert into join_table_large_1 values(5, 5);

insert into join_table_large_1 values(6, 6);

insert into join_table_large_1 values(7, 7);

insert into join_table_large_1 values(8, 8);

insert into join_table_large_1 values(9, 9);

insert into join_table_large_1 values(10, 10);

insert into join_table_large_1 values(11, 11);

insert into join_table_large_1 values(12, 12);

insert into join_table_large_2 values(1, 1);

insert into join_table_large_2 values(2, 2);

insert into join_table_large_2 values(3, 3);

insert into join_table_large_2 values(4, 4);

insert into join_table_large_2 values(5, 5);

insert into join_table_large_2 values(6, 6);

insert into join_table_large_2 values(7, 7);

insert into join_table_large_2 values(8, 8);

insert into join_table_large_2 values(9, 9);

insert into join_table_large_2 values(10, 10);

insert into join_table_large_2 values(11, 11);

insert into join_table_large_2 values(12, 12);

insert into join_table_large_3 values(1, 1);

insert into join_table_large_3 values(2, 2);

insert into join_table_large_3 values(3, 3);

insert into join_table_large_3 values(4, 4);

insert into join_table_large_3 values(5, 5);

insert into join_table_large_3 values(6, 6);

insert into join_table_large_3 values(7, 7);

insert into join_table_large_3 values(8, 8);

insert into join_table_large_3 values(9, 9);

insert into join_table_large_3 values(10, 10);

insert into join_table_large_3 values(11, 11);

insert into join_table_large_3 values(12, 12);

insert into join_table_large_4 values(1, 1);

insert into join_table_large_4 values(2, 2);

insert into join_table_large_4 values(3, 3);

insert into join_table_large_4 values(4, 4);

insert into join_table_large_4 values(5, 5);

insert into join_table_large_4 values(6, 6);

insert into join_table_large_4 values(7, 7);

insert into join_table_large_4 values(8, 8);

insert into join_table_large_4 values(9, 9);

insert into join_table_large_4 values(10, 10);

insert into join_table_large_4 values(11, 11);

insert into join_table_large_4 values(12, 12);

insert into join_table_large_5 values(87, 87);

insert into join_table_large_5 values(88, 88);

insert into join_table_large_5 values(89, 89);

insert into join_table_large_5 values(90, 90);

insert into join_table_large_5 values(91, 91);

insert into join_table_large_5 values(92, 92);

insert into join_table_large_5 values(93, 93);

insert into join_table_large_5 values(94, 94);

insert into join_table_large_5 values(95, 95);

insert into join_table_large_5 values(96, 96);

insert into join_table_large_5 values(97, 97);

insert into join_table_large_5 values(98, 98);

insert into join_table_large_5 values(99, 99);

insert into join_table_large_5 values(100, 100);

insert into join_table_large_6 values(86, 86);

insert into join_table_large_6 values(87, 87);

insert into join_table_large_6 values(88, 88);

insert into join_table_large_6 values(89, 89);

insert into join_table_large_6 values(90, 90);

insert into join_table_large_6 values(91, 91);

insert into join_table_large_6 values(92, 92);

insert into join_table_large_6 values(93, 93);

insert into join_table_large_6 values(94, 94);

insert into join_table_large_6 values(95, 95);

insert into join_table_large_6 values(96, 96);

insert into join_table_large_6 values(97, 97);

insert into join_table_large_6 values(98, 98);

insert into join_table_large_6 values(99, 99);

insert into join_table_large_6 values(100, 100);

大数据下没问题,就是数据要求可判断的

miniob > select * from join_table_large_1 inner join join_table_large_2 on join_table_large_1.id=join_table_large_2.id inner join join_table_large_3 on join_table_large_1.id=join_table_large_3.id inner join join_table_large_4 on join_table_large_3.id=join_table_large_4.id inner join join_table_large_5 on 1=1 inner join join_table_large_6 on join_table_large_5.id=join_table_large_6.id where join_table_large_3.num3 <10 and join_table_large_5.num5>90;

id | num1 | id | num6 | id | num5 | id | num4 | id | num3 | id | num2

1 | 1 | 91 | 91 | 91 | 91 | 1 | 1 | 1 | 1 | 1 | 1

1 | 1 | 92 | 92 | 92 | 92 | 1 | 1 | 1 | 1 | 1 | 1

1 | 1 | 93 | 93 | 93 | 93 | 1 | 1 | 1 | 1 | 1 | 1

1 | 1 | 94 | 94 | 94 | 94 | 1 | 1 | 1 | 1 | 1 | 1

1 | 1 | 95 | 95 | 95 | 95 | 1 | 1 | 1 | 1 | 1 | 1

1 | 1 | 96 | 96 | 96 | 96 | 1 | 1 | 1 | 1 | 1 | 1

1 | 1 | 97 | 97 | 97 | 97 | 1 | 1 | 1 | 1 | 1 | 1

1 | 1 | 98 | 98 | 98 | 98 | 1 | 1 | 1 | 1 | 1 | 1

1 | 1 | 99 | 99 | 99 | 99 | 1 | 1 | 1 | 1 | 1 | 1

1 | 1 | 100 | 100 | 100 | 100 | 1 | 1 | 1 | 1 | 1 | 1

2 | 2 | 91 | 91 | 91 | 91 | 2 | 2 | 2 | 2 | 2 | 2

2 | 2 | 92 | 92 | 92 | 92 | 2 | 2 | 2 | 2 | 2 | 2

2 | 2 | 93 | 93 | 93 | 93 | 2 | 2 | 2 | 2 | 2 | 2

2 | 2 | 94 | 94 | 94 | 94 | 2 | 2 | 2 | 2 | 2 | 2

2 | 2 | 95 | 95 | 95 | 95 | 2 | 2 | 2 | 2 | 2 | 2

2 | 2 | 96 | 96 | 96 | 96 | 2 | 2 | 2 | 2 | 2 | 2

2 | 2 | 97 | 97 | 97 | 97 | 2 | 2 | 2 | 2 | 2 | 2

2 | 2 | 98 | 98 | 98 | 98 | 2 | 2 | 2 | 2 | 2 | 2

2 | 2 | 99 | 99 | 99 | 99 | 2 | 2 | 2 | 2 | 2 | 2

2 | 2 | 100 | 100 | 100 | 100 | 2 | 2 | 2 | 2 | 2 | 2

3 | 3 | 91 | 91 | 91 | 91 | 3 | 3 | 3 | 3 | 3 | 3

3 | 3 | 92 | 92 | 92 | 92 | 3 | 3 | 3 | 3 | 3 | 3

3 | 3 | 93 | 93 | 93 | 93 | 3 | 3 | 3 | 3 | 3 | 3

3 | 3 | 94 | 94 | 94 | 94 | 3 | 3 | 3 | 3 | 3 | 3

3 | 3 | 95 | 95 | 95 | 95 | 3 | 3 | 3 | 3 | 3 | 3

3 | 3 | 96 | 96 | 96 | 96 | 3 | 3 | 3 | 3 | 3 | 3

3 | 3 | 97 | 97 | 97 | 97 | 3 | 3 | 3 | 3 | 3 | 3

3 | 3 | 98 | 98 | 98 | 98 | 3 | 3 | 3 | 3 | 3 | 3

3 | 3 | 99 | 99 | 99 | 99 | 3 | 3 | 3 | 3 | 3 | 3

3 | 3 | 100 | 100 | 100 | 100 | 3 | 3 | 3 | 3 | 3 | 3

4 | 4 | 91 | 91 | 91 | 91 | 4 | 4 | 4 | 4 | 4 | 4

4 | 4 | 92 | 92 | 92 | 92 | 4 | 4 | 4 | 4 | 4 | 4

4 | 4 | 93 | 93 | 93 | 93 | 4 | 4 | 4 | 4 | 4 | 4

4 | 4 | 94 | 94 | 94 | 94 | 4 | 4 | 4 | 4 | 4 | 4

4 | 4 | 95 | 95 | 95 | 95 | 4 | 4 | 4 | 4 | 4 | 4

4 | 4 | 96 | 96 | 96 | 96 | 4 | 4 | 4 | 4 | 4 | 4

4 | 4 | 97 | 97 | 97 | 97 | 4 | 4 | 4 | 4 | 4 | 4

4 | 4 | 98 | 98 | 98 | 98 | 4 | 4 | 4 | 4 | 4 | 4

4 | 4 | 99 | 99 | 99 | 99 | 4 | 4 | 4 | 4 | 4 | 4

4 | 4 | 100 | 100 | 100 | 100 | 4 | 4 | 4 | 4 | 4 | 4

5 | 5 | 91 | 91 | 91 | 91 | 5 | 5 | 5 | 5 | 5 | 5

5 | 5 | 92 | 92 | 92 | 92 | 5 | 5 | 5 | 5 | 5 | 5

5 | 5 | 93 | 93 | 93 | 93 | 5 | 5 | 5 | 5 | 5 | 5

5 | 5 | 94 | 94 | 94 | 94 | 5 | 5 | 5 | 5 | 5 | 5

5 | 5 | 95 | 95 | 95 | 95 | 5 | 5 | 5 | 5 | 5 | 5

5 | 5 | 96 | 96 | 96 | 96 | 5 | 5 | 5 | 5 | 5 | 5

5 | 5 | 97 | 97 | 97 | 97 | 5 | 5 | 5 | 5 | 5 | 5

5 | 5 | 98 | 98 | 98 | 98 | 5 | 5 | 5 | 5 | 5 | 5

5 | 5 | 99 | 99 | 99 | 99 | 5 | 5 | 5 | 5 | 5 | 5

5 | 5 | 100 | 100 | 100 | 100 | 5 | 5 | 5 | 5 | 5 | 5

6 | 6 | 91 | 91 | 91 | 91 | 6 | 6 | 6 | 6 | 6 | 6

6 | 6 | 92 | 92 | 92 | 92 | 6 | 6 | 6 | 6 | 6 | 6

6 | 6 | 93 | 93 | 93 | 93 | 6 | 6 | 6 | 6 | 6 | 6

6 | 6 | 94 | 94 | 94 | 94 | 6 | 6 | 6 | 6 | 6 | 6

6 | 6 | 95 | 95 | 95 | 95 | 6 | 6 | 6 | 6 | 6 | 6

6 | 6 | 96 | 96 | 96 | 96 | 6 | 6 | 6 | 6 | 6 | 6

6 | 6 | 97 | 97 | 97 | 97 | 6 | 6 | 6 | 6 | 6 | 6

6 | 6 | 98 | 98 | 98 | 98 | 6 | 6 | 6 | 6 | 6 | 6

6 | 6 | 99 | 99 | 99 | 99 | 6 | 6 | 6 | 6 | 6 | 6

6 | 6 | 100 | 100 | 100 | 100 | 6 | 6 | 6 | 6 | 6 | 6

7 | 7 | 91 | 91 | 91 | 91 | 7 | 7 | 7 | 7 | 7 | 7

7 | 7 | 92 | 92 | 92 | 92 | 7 | 7 | 7 | 7 | 7 | 7

7 | 7 | 93 | 93 | 93 | 93 | 7 | 7 | 7 | 7 | 7 | 7

7 | 7 | 94 | 94 | 94 | 94 | 7 | 7 | 7 | 7 | 7 | 7

7 | 7 | 95 | 95 | 95 | 95 | 7 | 7 | 7 | 7 | 7 | 7

7 | 7 | 96 | 96 | 96 | 96 | 7 | 7 | 7 | 7 | 7 | 7

7 | 7 | 97 | 97 | 97 | 97 | 7 | 7 | 7 | 7 | 7 | 7

7 | 7 | 98 | 98 | 98 | 98 | 7 | 7 | 7 | 7 | 7 | 7

7 | 7 | 99 | 99 | 99 | 99 | 7 | 7 | 7 | 7 | 7 | 7

7 | 7 | 100 | 100 | 100 | 100 | 7 | 7 | 7 | 7 | 7 | 7

8 | 8 | 91 | 91 | 91 | 91 | 8 | 8 | 8 | 8 | 8 | 8

8 | 8 | 92 | 92 | 92 | 92 | 8 | 8 | 8 | 8 | 8 | 8

8 | 8 | 93 | 93 | 93 | 93 | 8 | 8 | 8 | 8 | 8 | 8

8 | 8 | 94 | 94 | 94 | 94 | 8 | 8 | 8 | 8 | 8 | 8

8 | 8 | 95 | 95 | 95 | 95 | 8 | 8 | 8 | 8 | 8 | 8

8 | 8 | 96 | 96 | 96 | 96 | 8 | 8 | 8 | 8 | 8 | 8

8 | 8 | 97 | 97 | 97 | 97 | 8 | 8 | 8 | 8 | 8 | 8

8 | 8 | 98 | 98 | 98 | 98 | 8 | 8 | 8 | 8 | 8 | 8

8 | 8 | 99 | 99 | 99 | 99 | 8 | 8 | 8 | 8 | 8 | 8

8 | 8 | 100 | 100 | 100 | 100 | 8 | 8 | 8 | 8 | 8 | 8

9 | 9 | 91 | 91 | 91 | 91 | 9 | 9 | 9 | 9 | 9 | 9

9 | 9 | 92 | 92 | 92 | 92 | 9 | 9 | 9 | 9 | 9 | 9

9 | 9 | 93 | 93 | 93 | 93 | 9 | 9 | 9 | 9 | 9 | 9

9 | 9 | 94 | 94 | 94 | 94 | 9 | 9 | 9 | 9 | 9 | 9

9 | 9 | 95 | 95 | 95 | 95 | 9 | 9 | 9 | 9 | 9 | 9

9 | 9 | 96 | 96 | 96 | 96 | 9 | 9 | 9 | 9 | 9 | 9

9 | 9 | 97 | 97 | 97 | 97 | 9 | 9 | 9 | 9 | 9 | 9

9 | 9 | 98 | 98 | 98 | 98 | 9 | 9 | 9 | 9 | 9 | 9

9 | 9 | 99 | 99 | 99 | 99 | 9 | 9 | 9 | 9 | 9 | 9

9 | 9 | 100 | 100 | 100 | 100 | 9 | 9 | 9 | 9 | 9 | 9

类型检测

CREATE TABLE join_table_1(id int, name char);

CREATE TABLE join_table_2(id int, num int);

INSERT INTO join_table_1 VALUES (1, 'a');

INSERT INTO join_table_1 VALUES (2, 'b');

INSERT INTO join_table_1 VALUES (3, 'c');

INSERT INTO join_table_2 VALUES (1, 2);

INSERT INTO join_table_2 VALUES (2, 15);

select * from join_table_1 inner join join_table_2 on join_table_1.name<join_table_2.num and join_table_1.id=join_table_2.id

select * from join_table_1

select * from join_table_1 inner join join_table_2 on join_table_1.id=join_table_2.id

select * from join_table_1 inner join join_table_2 on join_table_1.id=join_table_2.id

select * from join_table_1 inner join join_table_2 on join_table_1.id=join_table_2.id

相关推荐
计算机学姐16 分钟前
基于Python的高校成绩分析管理系统
开发语言·vue.js·后端·python·mysql·pycharm·django
激流丶23 分钟前
【Mysql 底层原理】MySQL 查询优化器的工作原理:如何生成最优执行计划
数据库·mysql·explain·执行计划
fierys28 分钟前
初始化mysql5.7
mysql
雷神乐乐39 分钟前
Sqoop学习
数据库·sqoop
小丑西瓜66644 分钟前
MySQL库操作
linux·服务器·数据库·mysql
谦谦均1 小时前
PostgreSQL序列:创建、管理与高效应用指南
数据库·postgresql
荒川之神1 小时前
RHEL/CENTOS 7 ORACLE 19C-RAC安装(纯命令版)
服务器·数据库·oracle
ZWZhangYu1 小时前
【MyBatis源码】深入分析TypeHandler原理和源码
数据库·oracle·mybatis
A_cot1 小时前
一篇Spring Boot 笔记
java·spring boot·笔记·后端·mysql·spring·maven
会飞的爱迪生1 小时前
mysql5常用命令(一)
mysql