完全免费的AI DB工具:Postgres.new 用自然语言操作数据库并进行分析

今天给大家介绍了一个非常好用的DB工具:Postgres.new 可用自然语言操作数据库,它可以根据给出的场景帮你设计表和创建表、批量创建数据、写SQL,优化SQL,并且还可以对数据进行分析,生成图表。下面让我给大家具体演示一下。


地址:https://postgres.new/


创建表


首先,我用自然语言描述我的需求,我让它给我创建一个Student表,再创建一个班级的表,让二者进行关联。这里我也不具体描述字段都需要包含哪些,也不告诉他这两个表如何去关联,它可以帮我们自动创建出来,并按照他的理解,自动给我们创建了字段。


输入的Prompt:

请帮我创建一个表student

再帮我创建一个班级的表进行关联



这里帮我创建出来了,可以查看建表的SQL,并且还用ER图给我们标记出了表的关系,非常方便和直观。


下面验证下生成的正确性,在自己本地的Postgres数据库执行下创建表的SQL看是否正确。



生成的建表SQL在本地可以执行,表被正常的创建出来了。


批量添加数据


这次,两个表创建好了,但是表中没有数据啊,我们用这个工具给我们创建5条数据,并且要求他创建的数据必须有关联。


输入的Prompt:

现在这两个表中没有数据,请帮我创建5条数据,并且这两个表的数据,可以进行关联



这里可以看到,他给这两张表生成了插入5条数据的SQL文,并且确实数据有关联性。


这里需要注意,他不会在Postgres.new平台上真正给你插入这五条数据,因为他毕竟不是SaaS产品,不是一个真正的线上数据库,所以生成的SQL文你还是需要copy到本地数据库去执行


下面验证下插入SQL的正确性,在自己本地的Postgres数据库执行下插入的SQL看是否正确。



插入数据的SQL在本地可以正常的执行,在两个表中插入了5条数据。


编写查询SQL


这次,我让他给我编写查询的SQL文,例如我想查询【Math 101】班的所有学生。


输入的Prompt:

基于上面插入的数据,请给我查询【Math 101】班的所有学生都有哪些,要求显示班级名称和该班级学生的详细信息。



他给我们生成了查询的SQL文,并且看给出的结果,初步判断是正确的,关于生成的字段,我Prompt描述的比较粗,但是他理解的很好,给出了我想要的查询字段,下面让我们去本地数据库去执行一下。



查询的SQL可以正确执行,给出了正确的结果。


统计分析


Postgres.new还有一个非常好用的功能,就是可以用自然语言描述,帮我们对数据进行分析,这次我的场景是让他统计每个班级有多少人,并生成图表。


输入的Prompt:

请用group统计对表进行分析,生成图表



他给我们自动生成了group by的SQL文,并将结果用柱状图显示了出来。但是我们的数据都是一样的,我再让他帮我们插入几条数据进行验证。


输入的Prompt:

再给1班,3班插入3条数据,2班插入1条数据。



这次他不但给我们插入了数据,还帮我们自动更新了统计结果,所以这个工具用于做数据统计分析也是很好用的。


优化SQL


这个工具还可以帮我们优化SQL,但是优化SQL前,你需要给出表的结构定义,让他进行创建,生成ER图,同时还要给出大概每个表的数据量有多少。如果不给出这些明确信息,他在优化时,无法给出索引的建议,也无法对表关联的前后顺序进行调整。


这里我给出了相关信息之后,给定了一个SQL让他给我们优化。



可以看到他给出了我们优化的建议和理由,并且最后还给出了优化后的SQL:



这里最后我还测评了复杂的场景,对于表间关系特别复杂(7张表关联),并且每个表的字段特别多的情况,我给出了一个他一个400多行的SQL文让他优化,效果并不理想。


复杂场景的DB设计


如果你并不是非常擅长设计DB的情况下,这个工具还可以帮我们很好的对数据库进行设计。例如我让他给我基于RBAC场景去设计表,他会帮我们很好的完成任务。


输入的Prompt:

现在要设计一个企业的ERP系统,权限系统是基于RBAC,请给我自动创建关联的表。



这里他会很好的帮我们把表设计出来,准确性也不错。


----------


关于AI DB领域的数据库产品并不多,之前我也用过一些AI DB工具,虽然这个工具只支持Postgres数据库,但是效果上和准确性上甚至比一些收费的AI DB工具还好用,完全免费,个人还是非常推荐的。


PS:这款工具还支持云DB,我已申请内测,如果通过了,后续会告诉大家体验如何。

(正文完)

更多精彩内容,欢迎扫码加入免费知识星球
极客e家

共同打造极客文化

请使用浏览器的分享功能分享到微信等