假设我有一个mysql表,其中包含empid和date列。我要数一数同一个月的日期。例如,如果empid在表中有4个来自同一个月的日期,则应触发一封电子邮件
using (MySqlConnection con = new MySqlConnection(serverstring))
{
con.Open();
string query = "SELECT COUNT(empID) FROM tblnm WHERE empID=@eid date=date";
MySqlCommand cmd = new MySqlCommand(query, con);
cmd.Parameters.AddWithValue("@eid", lbleid.Text);
string cnt = cmd.ExecuteScalar().ToString();
var count = Convert.ToInt32(cnt);
if(count >= 4)
{
triggerEmail();
}
}
所以这个月可以是未来的任何一个月,但是如果有超过或等于4个数据具有相同的empid在任何一个月的查询应该检查它和电子邮件必须被触发。我要怎么做?提前谢谢。。。。
2条答案
按热度按时间w51jfk4q1#
您可以执行以下查询:
但我会说,如果你想知道哪个empid有4个以上的条目:
nfg76nw02#
mysql拥有
LAST_DAY()
可与组合使用的函数GROUP BY
/HAVING
在同一个月内容易获得计数的条款:像这样使用: