栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java操作MySQL练习3

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java操作MySQL练习3

表: Candidate

Id是该表的主键列。该表的每一行都包含关于候选对象的id和名称的信息。

表: Vote

Id是自动递增的主键。candidateId是id来自Candidate表的外键。该表的每一行决定了在选举中获得第i张选票的候选人。

问题:编写一个SQL查询来报告获胜候选人的名字(即获得最多选票的候选人)。生成测试用例以确保 只有一个候选人赢得选举。

结果格式:

输入:

输出:候选人B有2票。候选人C、D、E各有1票。 

 

import java.sql.*;
public class test3 {

    // MySQL 8.0 以下版本 - JDBC 驱动名及数据库 URL
    static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
    static final String url = "jdbc:mysql://localhost:3306/student_course";

    // 数据库的用户名与密码,需要根据自己的设置
    static final String user = "root";
    static final String password = "123456";

    public static void main(String[] args) {
        Connection con = null;
        Statement sta = null;
        try{
            // 注册 JDBC 驱动
            Class.forName(JDBC_DRIVER);

            // 连接数据库
            con = DriverManager.getConnection(url,user,password);
            sta=con.createStatement();

            String s3 = "select name from student_course.candidate join student_course.vote " +
                    "on candidate.id = vote.candidateId group by name order by count(name) Desc limit 1;";
            //按名字出现的次数降序取第一个
            ResultSet rs3 = sta.executeQuery(s3);
            if(rs3.next()) {
                System.out.println("name");
                System.out.println(rs3.getString("name"));
            }
            // 完成后关闭
            sta.close();
            con.close();
        }catch(SQLException se){
            // 处理 JDBC 错误
            se.printStackTrace();
        }catch(Exception e){
            // 处理 Class.forName 错误
            e.printStackTrace();
        }finally{
            // 关闭资源
            try{
                if(sta!=null) sta.close();
            }catch(SQLException se2){
            }// 什么都不做
            try{
                if(con!=null) con.close();
            }catch(SQLException se){
                se.printStackTrace();
            }
        }
    }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/930206.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号