MySQL计数每次给出不同的结果

MySQL计数每次给出不同的结果,mysql,database,Mysql,Database,我使用一个MySQL查询来计算基于特定where条件的记录数。但每次网站/数据库都由来自多个系统的多个用户使用。计数结果差别很大 我试图找到很多东西,但无法找到问题所在。我正在附加屏幕截图。请帮忙 以下是截图: 表的结构: CREATE TABLE IF NOT EXISTS `rap_partmpuser` ( `par_tmp_track` int(11) NOT NULL, `par_tmp_exam` int(11) NOT NULL, `par_tmp_user` int(

我使用一个MySQL查询来计算基于特定where条件的记录数。但每次网站/数据库都由来自多个系统的多个用户使用。计数结果差别很大

我试图找到很多东西,但无法找到问题所在。我正在附加屏幕截图。请帮忙

以下是截图:

表的结构:

CREATE TABLE IF NOT EXISTS `rap_partmpuser` (
  `par_tmp_track` int(11) NOT NULL,
  `par_tmp_exam` int(11) NOT NULL,
  `par_tmp_user` int(11) NOT NULL,
  `par_tmp_status` varchar(100) NOT NULL,
  `par_tmp_sdate` date NOT NULL,
  `par_tmp_edate` date NOT NULL,
  `par_tmp_adate` date NOT NULL,
  `par_tmp_tdate` date NOT NULL,
  `par_terdate` date NOT NULL,
  `par_tmp_score` int(11) NOT NULL,
  `par_tmp_tques` int(11) NOT NULL,
  `par_tmp_uopt1` varchar(250) NOT NULL,
  `par_tmp_uopt2` varchar(250) NOT NULL,
  `par_tmp_uopt3` varchar(250) NOT NULL,
  `par_tmp_uopt4` varchar(250) NOT NULL,
  `par_tmp_uopt5` varchar(250) NOT NULL,
  `par_tmp_uopt6` varchar(250) NOT NULL,
  `par_tmp_uopt7` varchar(250) NOT NULL,
  `par_tmp_uopt8` varchar(250) NOT NULL,
  `par_tmp_uopt9` varchar(250) NOT NULL,
  `par_tmp_uopt10` varchar(250) NOT NULL,
  `par_tmp_uopt11` varchar(250) NOT NULL,
  `par_tmp_uopt12` varchar(250) NOT NULL,
  `par_tmp_uopt13` varchar(250) NOT NULL,
  `par_tmp_uopt14` varchar(250) NOT NULL,
  `par_tmp_uopt15` varchar(250) NOT NULL,
  `par_tmp_filter` int(11) NOT NULL,
  `par_tmp_sfilter` int(11) NOT NULL,
  `par_tmp_cpyid` int(11) NOT NULL,
  `par_tmp_usrid` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
我的问题是

SELECT count(*)
  FROM `rap_partmpuser`
 where par_tmp_cpyid='10106' and par_tmp_track='458'
   and par_tmp_usrid='771' and par_tmp_status='Active' 

有时它给我的结果是46,有时是26,有时是70。正确的结果是70。为什么有时候会不一样?

我认为答案很简单。我不确定这是唯一的错误

从rap\u零件MPUSER中选择计数(*),其中零件tmp\u cpyid=10106,并且 par_tmp_轨道=458,par_tmp_usrid=771,par_tmp_状态为“激活”


不要使用“单引号”来检查整数值,如
par\tmp\u cpyid='10106'
。如果你在下面得到正确的答案,请尝试上面的查询。

你能添加源代码或实际的屏幕截图吗?你能给我们看看SQL查询吗?@Vinay Sharma,在你的帖子中看不到屏幕截图。任何时候你发现自己正在枚举列名(x1、c2、x3等),可能是时候重新考虑你的设计了。请参见标准化。你如何知道表中的数据没有变化,因此变化的结果实际上是正确的?虽然这是事实,但我看不出它有什么相关性!如果你能在答案中添加这种解释,那就太好了。
$reponse = $bdd->prepare('
SELECT count(*)
  FROM rap_partmpuser 
 where par_tmp_cpyid=10106 and par_tmp_track=458
   and par_tmp_usrid=771 and par_tmp_status=\'Active\'');              

$reponse->execute(); 
$donnees = $reponse->fetch();

echo $donnees[0] ;