【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

相关推荐
devmoon7 小时前
在 Polkadot Runtime 中添加多个 Pallet 实例实战指南
java·开发语言·数据库·web3·区块链·波卡
认真的薛薛8 小时前
数据库-sql语句
数据库·sql·oracle
爱学英语的程序员8 小时前
面试官:你了解过哪些数据库?
java·数据库·spring boot·sql·mysql·mybatis
·云扬·9 小时前
MySQL Redo Log落盘机制深度解析
数据库·mysql
用户982863025689 小时前
pg内核实现细节
数据库
码界筑梦坊9 小时前
330-基于Python的社交媒体舆情监控系统
python·mysql·信息可视化·数据分析·django·毕业设计·echarts
飞升不如收破烂~9 小时前
Redis 分布式锁+接口幂等性使用+当下流行的限流方案「落地实操」+用户连续点击两下按钮的解决方案自用总结
数据库·redis·分布式
workflower9 小时前
业务需求-假设场景
java·数据库·测试用例·集成测试·需求分析·模块测试·软件需求
亓才孓9 小时前
[JDBC]基于三层架构和MVC架构的JDBCTools
数据库
不剪发的Tony老师10 小时前
Shaper:一款免费开源的数据可视化工具
sql·数据可视化