SQL31 提取博客URL中的用户名

原题链接

描述
题目:对于申请参与比赛的用户,blog_url字段中url字符后的字符串为用户个人博客的用户名,现在运营想要把用户的个人博客用户字段提取出单独记录为一个新的字段,请取出所需数据。

在这里插入图片描述

SELECT
  device_id,
  substring_index(blog_url, '/', -1) AS user_name
FROM
  user_submit

substring_index(string,sep,num) 即 substring_index(字符串,分隔符,序号)
在代码中的 substring_index(blog_url, '/', -1) 意思是将 blog_url这个字符串按照 / 分割成若干子串,-1表示返回从右往左开始的第一个子串。(如果num 是正整数,表示从左往右开始)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您提供一个大致的Java代码实现: ```java import java.sql.*; public class Login { static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; static final String DB_URL = "jdbc:mysql://localhost/USER"; // 数据库用户名与密码 static final String USER = "username"; static final String PASS = "password"; public static void main(String[] args) { Connection conn = null; Statement stmt = null; try{ // 注册 JDBC 驱动器 Class.forName("com.mysql.jdbc.Driver"); // 打开一个连接 System.out.println("Connecting to database..."); conn = DriverManager.getConnection(DB_URL,USER,PASS); // 执行查询 System.out.println("Creating statement..."); stmt = conn.createStatement(); String sql; sql = "SELECT id, username, password FROM user_table"; ResultSet rs = stmt.executeQuery(sql); // 处理结果集 while(rs.next()){ // 获取数据 int id = rs.getInt("id"); String username = rs.getString("username"); String password = rs.getString("password"); // 验证用户名和密码是否正确 if (username.equals(inputUsername) && password.equals(inputPassword)) { System.out.println("Login success!"); break; } } // 完成后关闭 rs.close(); stmt.close(); conn.close(); }catch(SQLException se){ // 处理 JDBC 错误 se.printStackTrace(); }catch(Exception e){ // 处理 Class.forName 错误 e.printStackTrace(); }finally{ // 关闭资源 try{ if(stmt!=null) stmt.close(); }catch(SQLException se2){ }try{ if(conn!=null) conn.close(); }catch(SQLException se){ se.printStackTrace(); } } } } ``` 以上代码,我们使用了JDBC连接MySQL数据库,并从数据库查询出用户名和密码数据,然后与输入的用户名和密码进行比对,验证登录是否成功。您可以根据自己的需要进行修改和完善。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值