2009-11-06 3 views
0

У меня есть дата колонного типа (MySQL):Получить отчетливый месяц и год с дозвуковых

SELECT invdate FROM invoices; 

invdate 
------- 
2009-08-22 
2009-07-12 
2009-08-23 
------- 

и я хочу получить месяц и год, как это:

SELECT DISTINCT MONTH(invdate) AS invmonth, YEAR(invdate) AS invyear FROM invoices; 

, как использовать в C# с SubSonic (SimpleRepository)?

ТИА

ответ

0

OMG! Я забыл определить переменную как date/datetime, поэтому я не могу использовать эти функции.

перед:

public string invdate { get; set; } 

после:

public DateTime invdate { get; set; } 

Моя ошибка, я извиняюсь. Проблема решена.

1

У вас был шанс, чтобы взглянуть на документы? См. Ссылку и код ниже, это должно помочь.

http://subsonicproject.com/docs/Distinct

[Test] 
public void SqlQuery_when_setting_distinct_it_should_set_IsDistinct() 
{ 
    SubSonic.SqlQuery query= new 
     Select(Product.SupplierIDColumn).From<Product>().Distinct(); 
    Assert.IsTrue(query.IsDistinct); 
} 

[Test] 
public void SqlQuery_should_handle_distinct() 
{ 
    ProductCollection select = new 
     Select(Product.SupplierIDColumn).From<Product>().Distinct() 
     .ExecuteAsCollection<ProductCollection>(); 

    Assert.AreEqual(29, select.Count); 

} 

[Test] 
public void SqlQuery_GetRecordCount_should_handle_distinct() 
{ 
    int select = new Select(Product.SupplierIDColumn) 
     .From<Product>().Distinct() 
     .GetRecordCount(); 

    Assert.AreEqual(29, select); 
}