Sql Query从csv数据库中获取票价

时间:2014-06-24 07:53:30

标签: mysql sql csv

我有csv格式的数据库,我想计算从一个站到另一个站的票价,但问题是数据库,我认为没有正确的格式来构建SQL查询,所以我们可以尝试从下面的数据库格式的SQL查询到以从versova到sakinaka的票价为例。

Database screenshot

还有任何其他解决方案表结构,它可以友好地触发它上面的SQL查询。

1 个答案:

答案 0 :(得分:1)

将CSV加载到System.Data.DataTable(C#)。

Create Table T_Hop
   HOP_Id integer not NULL
   ,HOP_Name nvarchar(200) 


Create Table T_Fare 
     Fare_Id integer not null 
    ,Fare_Departure_HOP_Id integer not null 
    ,Fare_Destination_HOP_Id integer not null 
    ,Fare_Fare numeric(10, 2) not null 

取第一排 foreach专栏==>添加具有id = ordinal index of column

的跃点名称
for(int i=0; i < dt.Columns.Count; ++i)
{
for(int j=0; j < dt.Rows.Count; ++j)
{
    double Fare = System.Convert.ToDouble(dt.Rows[j][i]);
    ==> insert into T_Fare(Fare_Id,Fare_Departure_HOP_Id, Fare_Destination_HOP_Id, Fare_Fare ) Values (j*dt.Columns.Count + i, i, j, Fare)
    // and check that I didn't mix up i and j
}
}

查询:

SELECT Fare_Fare 
WHERE Fare_Destionation_HopId = x 
and Fare_Departure_Hop_Id = y