You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

技术求助:如何获取version列子串最大值对应的目标行

嘿,我来帮你解决这个筛选问题!根据你的需求,我们需要从给定的数据集中找出version列里日期子串最大且版本子串也最大的行,下面给你两种常用的实现方案:

解决方案

方法1:使用SQL实现

假设你的数据表名为partner_data,我们可以通过拆分字段、分步计算最大值的方式来筛选目标行:

WITH split_version AS (
    SELECT 
        *,
        TRIM(SUBSTRING_INDEX(version, '|', 1)) AS date_part,
        TRIM(SUBSTRING_INDEX(version, '|', -1)) AS version_part
    FROM partner_data
),
max_date AS (
    SELECT MAX(date_part) AS latest_date
    FROM split_version
),
max_version AS (
    SELECT MAX(version_part) AS latest_version
    FROM split_version
    WHERE date_part = (SELECT latest_date FROM max_date)
)
SELECT *
FROM partner_data
WHERE 
    TRIM(SUBSTRING_INDEX(version, '|', 1)) = (SELECT latest_date FROM max_date)
    AND TRIM(SUBSTRING_INDEX(version, '|', -1)) = (SELECT latest_version FROM max_version);

逻辑解释:

  • 先用split_version公共表表达式(CTE)拆分version列,提取出日期和版本部分,并用TRIM去掉前后多余的空格;
  • max_date模块找出所有日期中的最大值(也就是Oct-2018);
  • max_version模块在日期为最大值的行里,进一步筛选出版本部分的最大值(也就是V.6);
  • 最后通过两个条件匹配,就能精准定位到你需要的目标行。

方法2:使用Python Pandas实现

如果你用Python处理数据集,Pandas会是很方便的工具,代码示例如下:

import pandas as pd

# 构造数据集(实际使用时可以替换成pd.read_csv等读取你的数据源)
data = {
    'partner': ['Alpha']*6,
    'region': ['US']*6,
    'affiliate': ['USA']*6,
    'country': ['USA']*6,
    'Revenue': [100, 568, 674, 314, 510, 309],
    'version': ['Sep-2018 | V.1', 'Sep-2018 | V.2', 'Sep-2018 | V.6', 'Oct-2018 | V.4', 'Oct-2018 | V.5', 'Oct-2018 | V.6']
}
df = pd.DataFrame(data)

# 拆分version列,清洗空格
df[['date_part', 'version_part']] = df['version'].str.split('|', expand=True)
df['date_part'] = df['date_part'].str.strip()
df['version_part'] = df['version_part'].str.strip()

# 分步找到最大日期和对应最大版本
latest_date = df['date_part'].max()
latest_version = df[df['date_part'] == latest_date]['version_part'].max()

# 筛选出目标行
result = df[(df['date_part'] == latest_date) & (df['version_part'] == latest_version)]
print(result)

运行后会输出你期望的结果:

partner region affiliate country  Revenue           version date_part version_part
5   Alpha     US       USA     USA      309  Oct-2018 | V.6  Oct-2018        V.6

内容的提问来源于stack exchange,提问作者Yash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 06:24:41