【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

相关推荐
云和数据.ChenGuang1 小时前
Django 应用安装脚本 – 如何将应用添加到 INSTALLED_APPS 设置中 原创
数据库·django·sqlite
woshilys1 小时前
sql server 查询对象的修改时间
运维·数据库·sqlserver
Hacker_LaoYi1 小时前
SQL注入的那些面试题总结
数据库·sql
建投数据2 小时前
建投数据与腾讯云数据库TDSQL完成产品兼容性互认证
数据库·腾讯云
Hacker_LaoYi3 小时前
【渗透技术总结】SQL手工注入总结
数据库·sql
岁月变迁呀3 小时前
Redis梳理
数据库·redis·缓存
独行soc3 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍06-基于子查询的SQL注入(Subquery-Based SQL Injection)
数据库·sql·安全·web安全·漏洞挖掘·hw
你的微笑,乱了夏天4 小时前
linux centos 7 安装 mongodb7
数据库·mongodb
工业甲酰苯胺4 小时前
分布式系统架构:服务容错
数据库·架构
独行soc5 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍08-基于时间延迟的SQL注入(Time-Based SQL Injection)
数据库·sql·安全·渗透测试·漏洞挖掘