返回SQL中第三个字段的最大值对应的每个名称和其他字段

时间:2017-01-11 07:11:47

标签: sql

我目前在图片上有如下表格。 我想写一个查询返回所有的名称和travel_date与最大的'总和'每个名字的价值。例如,我想在这种情况下返回查询: Armand 2012-07-18和Elish 2012-06-18。我怎么能这样做?提前致谢

enter image description here

2 个答案:

答案 0 :(得分:0)

SELECT name, MAX(travel_date)
  FROM my_table
 GROUP BY name;

答案 1 :(得分:0)

在大多数情况下,您会发现此过程相对普遍。以下示例适用于MySQL,MSSQL和DB2(以及其他)。

#include<iostream>
#include<vector>
using namespace std;
class arrays{
private:
    int n;
public:
    void input(){
        cout<<"Enter the size of arrays ";
        cin>>n;
    }

    void array_creation(vector<int>Z){
        long int b;
        int a;
        cout<<"Enter the binary number ";
        cin>>b;
        while(b!=0){
            a=b%10;
            Z.push_back(a);
            b=b/10;
        }
        Z[-1]=0;
    }

    void output(vector<int>Z){
        cout<<"The sum of two binary numbers is ";
        for(int a=0;a<n+1;a++)
            cin>>Z[a];
    }

    void logic_set(vector<int>Z,vector<int>Y,vector<int>X){
        for(int a=n-1;a>=0;a--){
            if(Z[a]==0 && Y[a]==0)
                X[a+1]=0;
            if(Z[a]==0 && Y[a]==1)
                X[a+1]=1;
            if(Z[a]==1 && Y[a]==0)
                X[a+1]=1;
            if(Z[a]==1 && Y[a]==1){
                X[a+1]=0;
            label:
                if(Z[a-1]==0)
                    Z[a-1]=1;
                if(Z[a-1]==1)
                    Z[a-1]==2;
            }
            if(Z[a]==2){
                X[a+1]==Y[a];
                goto label;
            }
        }
    }
};
int main(){
    arrays a,b;
    vector<int>A;
    vector<int>B;
    vector<int>C;
    a.input();
    a.array_creation(A);
    b.array_creation(B);
    a.logic_set(A,B,C);
    a.output(C);
}

这是我使用的示例数据的示例,包括运行查询后的结果。 Data example <强> - Results

编辑:作为jarlh,我写的初始查询确实是错误的。以下查询应提供您在下面的评论中请求的结果。