【发布时间】:2017-04-19 21:34:12
【问题描述】:
我正在创建以下表格。
CREATE TABLE Person (
Case_Number VARCHAR(50) Primary Key,
Sex VARCHAR(10)
);
CREATE TABLE ourCases (
Case_Number VARCHAR(50) Primary Key,
Rage VARCHAR(30),
Activity VARCHAR(30),
Fatal VARCHAR(10)
);
CREATE TABLE Area_Time (
Case_Number VARCHAR(50) Primary Key,
ourYear int,
ourTime VARCHAR(20),
Area VARCHAR(50)
);
我的所有查询都有效,除了当我包含每个表的最后一列时,即“区域”、“致命”和“性别”,只要我包含那些我的计数等于 0,即使它不应该,因为我可以在 .csv 表中看到它。
我使用的查询
SELECT
COUNT(*)
FROM
area_time,
ourcases,
person
WHERE
area_time.Case_Number = ourcases.Case_Number
AND
area_time.Case_Number = person.Case_Number
AND
person.Case_Number = ourcases.Case_Number
AND
ourYear = 2016
AND
ourTime = "Afternoon"
AND
Area = "Florida";
当我删除 "Area = "Florida"" 部分时,它会相应地工作。 我在我的 Java 应用程序和 mySQL 工作台中尝试了这些查询,但都不起作用。我根本看不出数据有什么问题。 .csv 导入也没有问题。我错过了什么?
【问题讨论】:
-
您是否尝试使用这三个字段添加和标识符,如下所示。
area_time.ourYear = 2016 AND area_time.ourTime = 'Afternoon'AND area_time.Area = 'Florida'如果不行可以尝试dump这三个表的数据在这里评论一下。 -
之前尝试过标识符,显然没有帮助。 Here is the data I use