2016-04-12 27 views
5

ı user tablodaki kayıtlardan YEAR_MONTH ayıklamak çalışıyorum diyelimSEQUELIZE: EXTRACT nasıl kullanılır MySQL fonksiyonu

yazabilirim:

SELECT EXTRACT(YEAR_MONTH FROM u.created_on) 
FROM user u; 

yazmak için nasıl anlamak mücadele ediyorum Daha karmaşık MySQL yöntemlerini içeren bir sıralı sorgu. Sadece bir parametre almak basit MySQL yöntemleri için

sequelize.fn('avg', sequelize.col('User.age')), 'avg_age']

:

ben gibi bir şey kullanabilirsiniz biliyorum.

Bu

alabilirim en yakın olmuştur:

aşağıdaki SQL sonuçlanır
[sequelize.fn('extract', ['YEAR', 'FROM'], 
sequelize.col('User.created_on')), 'created_year_month'] 

:

SELECT EXTRACT(YEAR_MONTH FROM u.created_on) 
FROM user u; 

Ben bir kayıp am aksine

extract('YEAR_MONTH', 'FROM', `User`.`created_on`) AS `created_year_month` 

Bu sorguyu doğru şekilde nasıl oluşturabilirim.

cevap

1

Biraz daha kazma yaptım ve SQL çözümüme rasgele parçalar eklemek için doğru çözümü sequelize.literal() kullanmak gerekti.

burada çözüm kullanmaktır

sequelize.literal('extract(YEAR_MONTH FROM `User`.`created_on`) AS created_year_month')