Mysql表损坏?

Mysql表损坏?,mysql,count,records,Mysql,Count,Records,我有一个包含两个文本字段的表,两个字段的索引长度都为4 SELECT COUNT(*) cnt FROM `mytable` WHERE `field1` = ‘blue’; 给我看4张唱片和 SELECT COUNT(*) cnt FROM `mytable` WHERE `field2` = ‘blue’; 显示另外4条记录(不同结果) 但是: 只显示了5张唱片!为什么 当我使用descripe SELECT等(不含计数)时,它告诉我以下信息: id选择类型表类型可能的键长度参考行额外

我有一个包含两个文本字段的表,两个字段的索引长度都为4

SELECT COUNT(*) cnt FROM `mytable` WHERE `field1` = ‘blue’;
给我看4张唱片和

SELECT COUNT(*) cnt FROM `mytable` WHERE `field2` = ‘blue’;
显示另外4条记录(不同结果)

但是:

只显示了5张唱片!为什么

当我使用
descripe SELECT
等(不含计数)时,它告诉我以下信息:

id选择类型表类型可能的键长度参考行额外 1个简单mytable索引_合并字段1、字段2字段1、字段2 6、6 NULL 495使用排序_联合(字段1、字段2);使用where

这怎么可能?为什么我看不到全部8张唱片

(注意:我替换了表名,因为实名是荷兰语)

如果您需要更多的表格信息,我会发布它

请帮忙。

你需要什么

SELECT COUNT(*) cnt FROM mytable WHERE field1 = ‘blue’ AND field2 <> ‘blue’;
SELECT COUNT(*) cnt FROM mytable WHERE field2 = ‘blue’ AND field1 <> ‘blue’;
SELECT COUNT(*) cnt FROM mytable WHERE field2 = ‘blue’ AND field1 = ‘blue’;
从mytable中选择COUNT(*)cnt,其中field1='blue'和field2'blue';
从mytable中选择COUNT(*)cnt,其中field2='蓝色'和field1'蓝色';
从mytable中选择COUNT(*)cnt,其中field2='blue'和field1='blue';

只需从mytable中选择*,其中field1='blue'或field2='blue';'您将看到您的问题:)这实际上不是问题,因为
field1
field2
可能都有值
blue
在一行中,field1为蓝色或field2为蓝色的结果可能重叠。第一个查询:8记录第二个查询:8记录第三个查询:0记录您确定,您拥有所有的
字段1
字段2
=
对吗?两个字段中没有具有相同值的记录。从mytable中选择COUNT(*)cnt,其中field2='blue'和field1='blue';显示0条记录。
SELECT COUNT(*) cnt FROM mytable WHERE field1 = ‘blue’ AND field2 <> ‘blue’;
SELECT COUNT(*) cnt FROM mytable WHERE field2 = ‘blue’ AND field1 <> ‘blue’;
SELECT COUNT(*) cnt FROM mytable WHERE field2 = ‘blue’ AND field1 = ‘blue’;