我有一个疑问:
SELECT * FROM `commande`:
id datecreation motif tva numero periode
1 27/02/2017 16:16 Achat marchandise NULL C001 NULL
9 28/03/2017 14:43 Achat marchandise NULL C002 NULL
10 28/03/2017 14:47 Achat marchandise NULL C003 NULL
11 28/04/2017 14:53 Achat marchandise NULL C004 NULL
12 28/04/2017 14:57 Achat marchandise NULL C005 NULL
13 28/05/2017 15:00 Achat marchandise NULL C006 NULL
14 28/05/2017 15:36 Achat marchandise NULL C007 NULL
15 28/05/2017 16:58 Achat marchandise NULL C008 NULL
16 28/05/2017 17:11 Achat marchandise NULL C009 NULL
我想创建一个存储过程来根据“datecreation”月份更新列“periode”,“periode”列是学期号,
例如:
if month(datecreation)=4 then periode = 2
if month(datecreation)=3 then periode = 1
if month(datecreation)=5 then periode = 2
我该怎么做?谢谢
最佳答案
正如我在评论中提到的,学期系统将一年分为两部分。在这种情况下,第 1 - 6 个月是第 1 学期,第 7 - 12 个月是第 2 学期。您可以像下面这样实现
update commande
set periode =
(floor(month(datecreation)/6) + 1 );
如果您希望第 3 个月为 1
,月份 4
和 5
为 2
,那么您就是在说话关于季度系统,其中年份分为 4 部分。在这种情况下使用
update commande
set periode =
(floor(month(datecreation)/4) + 1 );
关于mysql - 使用存储过程查找学期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44365535/