程序员必备的免费自然语言转SQL (摸鱼)工具,人手必备

news2024/9/30 19:28:13

程序员必备的免费自然语言转SQL (摸鱼)工具,人手必备

1、SQL查询中添加过滤

请对附加的SQL查询添加筛选条件,仅显示在加州居住且消费总额排名前10位的客户。

“SELECT customer_name, SUM(order_total) AS total_spent FROM orders GROUP BY customer_name ORDER BY total_spent DESC;

在这里插入图片描述

2、编写一条SQL语句,检索所有订单中客户名称、订单日期、产品名称和数量,其中订单总额大于$1,000且产品名称包含单词“chair”

SELECT customers.customer_name, orders.order_date, order_details.product_name, order_details.quantity
FROM customers
JOIN orders ON customers.customer_id = orders.customer_id
JOIN order_details ON orders.order_id = order_details.order_id
WHERE orders.order_total > 1000 AND order_details.product_name LIKE '%chair%';

在这里插入图片描述

3、按日期范围过滤数据

显示 2022 年 1 月 1 日至 2022 年 3 月 1 日之间的所有订单。 SELECT * FROM orders WHERE
order_date BETWEEN ‘2022-01-01’ AND ‘2022-03-01’;

private static String getString13(String text) {
        String regs[] = {"(\\d{4})年(\\d{1,2})月(\\d{1,2})日"};
        for (String reg : regs) {
            Pattern pattern = Pattern.compile(reg);
            Matcher matcher = pattern.matcher(text);
            if (matcher.find()) {
                String year = matcher.group(1);
                String month = String.format("%02d", Integer.parseInt(matcher.group(2)));
                String day = String.format("%02d", Integer.parseInt(matcher.group(3)));
                return year + "-" + month + "-" + day;
            }
        }
        return "";
    }

在这里插入图片描述

4、不仅仅是 SELECT - 还可以Update

使用 SQL 更新电子产品分类是electronics的价格,并将价格提高10%。
UPDATE products SET price =
price * 1.1 WHERE category = ‘electronics’;
在这里插入图片描述

5、创建数据库

在这里插入图片描述
BITO:
https://share.bito.co/static/share?aid=1edd448a-544c-4526-a96d-59bc04166709

public static String generatorSqlQuery2(String sql, String demand, String table){
        String keyword = "",d2="";
        if(demand.contains("查询")||demand.contains("select")||demand.contains("筛选")){
            keyword = "SELECT * FROM "+table+" ";
            String d = keyword,text = demand;
            keyword = getColums(d, text); //第二部分 column
//            d2 = getColums51(d2, text); //第5部分 set
            keyword = getColums5(keyword, text, 0); //第5部分 where
            //第3部分 GROUP BY 总额
            keyword = getColums3(keyword, text); //第3部分 column
            //第4部分 ORDER BY 排名
            keyword = getColums4(keyword, text); //第4部分 column

        }else if(demand.contains("删除数据")||demand.contains("delete")){
            keyword = "DELETE";
        }else if(demand.contains("删除")||demand.contains("drop")){
            keyword = "DROP";
        }else if(demand.contains("修改数据")||demand.contains("update")||demand.contains("更新")){
            keyword = "UPDATE ";
            String d = keyword,text = demand;
            keyword = getColums(d, text); //第二部分 column
            keyword = getColums51(keyword, text); //第5部分 set
            keyword = getColums5(keyword, text, 0); //第5部分 where
        }else if(demand.contains("修改")||demand.contains("alter")){
            keyword = "ALTER";
        }else if(demand.contains("增加")||demand.contains("insert")){
            keyword = "INSERT";
        }else if(demand.contains("创建")||demand.contains("create")){
            String name = getText5(demand);
            keyword = "create database if not exists "+name+" character set utf8";
        }else if(demand.contains("显示")||demand.contains("show")){
            keyword = "SHOW";
        }else if(demand.contains("清空")||demand.contains("truncate")){
            keyword = "TRUNCATE";
        }
        keyword = keyword+";";
        return keyword;
    }

查询代码的书写顺序和执行顺序

  • 查询语句的书写顺序:SELECT-FROM-WHERE-GROUP BY-HAVING-ORDER BY-LIMIT
  • 查询语句的执行顺序:FROM-WHERE-GROUP BY-HAVING-SELECT-ORDER BY-LIMIT
  • 语法:
  • SELECT selection_list /*要查询的列名称
    //
    // *FROM table_list /要查询的表名称/
    // *
    // *WHERE condition /行条件/
    // *
    // *GROUP BY grouping_columns /对结果分组/
    // *
    // *HAVING condition /分组后的行条件/
    // *
    // *ORDER BY sorting_columns /对结果分组/
    // *
    // *LIMIT offset_start,row_count /结果限定/

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

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

相关文章

web缓存—Squid代理服务

1.squid的相关知识 1.1 squid的概念 Squid服务器缓存频繁要求网页、媒体文件和其它加速回答时间并减少带宽堵塞的内容。 Squid代理服务器(Squid proxy server)一般和原始文件一起安装在单独服务器而不是网络服务器上。Squid通过追踪网络中的对象运用起…

一文搞懂Golang中的接口

目录 接口 接口介绍 接口定义 实现接口 空接口 实现空接口 类型断言 使用类型断言 结构体实现多接口 接口嵌套 结构体值接收者和指针接收者实现接口的区别 代码案例 接口 接口介绍 Go语言中的接口(interface)是一组方法签名的集合&#xf…

单片机--STM中断系统

目录 【1】中断系统 1.基本概念 2.中断的意义 中断提高了CPU效率? 3.中断处理过程 中断处理过程 4. 中断体系结构 5.NVIC NVIC主要功能 6.EXTI 【2】IIC IIC主要特点 【3】485 【1】中断系统 1.基本概念 在处理器中,中断相当于对于突发事件…

【Scala---02】Scala 类与对象 『 类 | 属性 | 访问权限 | 方法 | 继承 | 伴生对象伴生类』

文章目录 1. 定义类2. 属性3. 访问权限4. 方法4.1 方法 vs 函数4.2 方法重写4.3 方法重载4.4 构造方法(1) 构造器定义(2) 构造器的参数列表(3) 构造器私有化 5. 继承6. 伴生对象 & 伴生类6.1 伴生对象的由来6.2 伴生对象 & 伴生类 7. 后续 1. 定义类 Java文件&#xf…

JavaScript全解析——ES6函数中参数的默认值和解构赋值

本文为千锋资深前端教学老师带来的【JavaScript全解析】系列,文章内含丰富的代码案例及配图,从0到1讲解JavaScript相关知识点,致力于教会每一个人学会JS! 文末有本文重点总结,可以收藏慢慢看~ 更多技术类内容&#xf…

AI向百万薪资 高级原画师开刀?!爆Midjourney入局3D模型生成

来源 SoulofArt | ID Soul_Art 现在AI向高级原画师和3D开刀了? 网传爆料AI已入局3D模型生成... 这进化速度放在整个行业都十分炸裂 4月,Midjourney进一步宣布推出Niji-journey V5 这是MJ针对二次元动漫风格预训练好的模型 可在其中添加提示词直接调…

Android 广播使用详解(Broadcast Receivers)

Android 广播接收器(Broadcast Receivers) 广播接收器用于响应来自其他应用程序或者系统的广播消息。这些消息有时被称为事件或者意图。例如,应用程序可以初始化广播来让其他的应用程序知道一些数据已经被下载到设备,并可以为他们所用。这样广播接收器可…

Kubernetes配置管理 ConfigMap

Kubernetes配置管理 ConfigMap 一、ConfigMap 1.1 什么是configmap kubernetes集群可以使用ConfigMap来实现对容器中应用的配置管理。可以把ConfigMap看作是一个挂载到pod中的存储卷 1.2 创建ConfigMap的4种方式 1.2.1 在命令行指定参数创建 通过直接在命令行中指定config…

新手玩转腾讯云轻量应用服务器搭建网站(保姆级教程)

腾讯云轻量应用服务器镜像选择宝塔Linux面板,然后在宝塔面板上安装LNMP网站所需的Web环境,在宝塔面板上新建站点,上床网站程序安装包到根目录,并安装网站全流程。腾讯云百科来详细说下腾讯云轻量应用服务器搭建网站全流程&#xf…

opencv显示图片

要使用OpenCV在Python中显示图像,您需要遵循以下步骤: 1. 首先,确保已经安装了OpenCV。您可以使用以下命令安装OpenCV: pip install opencv-python 2. 然后,编写一个简单的程序来读取并显示图像。以下是一个示例代码…

数据可视化之雷达图(Radar Chart)

什么是雷达图? 雷达图(Radar Chart)也称为蜘蛛图、网络图或极坐标图,是一种用于可视化多变量数据的图表。该图表由一系列从中心点向外辐射的辐条组成,每个辐条代表一个不同的变量。数据使用线或区域绘制在每个辐条上&#xff0c…

面试的水太深,年轻人你把握不住.....

前言 去阿里面试测试工程师,这里面水太深,什么未来规划,职业发展的东西都是虚拟的,作者还太年轻,没有那个经历,把握不住。项目只有几个,开心快乐就行,不PK,文明PK。 很…

Partial convolution Gated convolution

组会讨论帖 1. 图像修复 图像修复(Image Inpainting),顾名思义,就是将图像中损坏的部分修复起来,是一种图像编辑技术,可以应用在移除物体、修复老照片、图像补全(eg,地震插值)等等。…

【初始scrapy框架上】——全栈开发——如桃花来

目录索引 scrapy框架的介绍:scrapy第三方包的下载:常见的换源网址: scrapy的图示原理:或者:或者: scrapy原理流程:详细介绍:流程描述:scrapy中的三个内置对象&#xff1a…

open cv 4.6.0 导入maven库以及依赖包 安装教程

windows: 1.官网下载windows安装包 2.安装完成后,复制opencv\build\java\x64\opencv_java451.dll 到 C:\Windows 下 centos: 参考https://www.cnblogs.com/huizhipeng/p/12732019.html 1.先安装cmake3 参考https://www.jianshu.com/p/20…

详谈大模型训练和推理优化技术

详谈大模型训练和推理优化技术 作者:王嘉宁,转载请注明出处:https://wjn1996.blog.csdn.net/article/details/130764843 ChatGPT于2022年12月初发布,震惊轰动了全世界,发布后的这段时间里,一系列国内外的…

莫言用 GPT 写颁奖辞,那如果他自己写会是什么效果呢?

在《收获》杂志 65 周年庆典上,莫言在为余华颁奖时表示,余华是自己的好朋友,但给他的颁奖词写了好几天也想不出来,后来找了 ChatGPT 帮忙写。最后,莫言让 ChatGPT 写了一篇莎士比亚风格 1000 多字的颁奖词,…

「硬核分享」Docker+jenkinsPipeline 运行实现 python 自动化

一、实现思路 在 Linux 服务器安装 docker 创建 jenkins 容器 jenkins 中创建 pipeline 项目 根据自动化项目依赖包构建 python 镜像(构建自动化 python 环境) 运行新的 python 容器,执行 jenkins 从仓库中拉下来的自动化项目 执行完成之后删除容器 二、环境准…

Defining Timing Constraints and Exceptions(UG945)

在本实验中,将学习为设计创建约束的两种方法。将使用Vivado2019.2 IDE中包含的Kintex-7 CPU网表示例设计。 步骤1:打开示例项目 1.打开Vivado IDE。 Vivado IDE的“Getting Started page”包含打开或创建项目以及查看文档的链接。 2.在“Getting Started…

泛型编程与模板简单介绍,函数模板及其原理与template,typename,模板参数T,函数模板隐式实例化等

泛型编程 比方说现在要去实现一个通用的交换函数,以我们现在的思路,肯定是通过函数重载去解决。但是这样子的话有几个缺点:重载的函数仅仅是类型不同,代码复用率比较低,只要有新类型出现时,就需要用户自己…