我希望有人能幫助我。我對MySQL很新,所以我不完全熟悉它的所有功能。驗證MySQL中的數據
我被賦予與所述格式的數據的電子表格:
child Name |Gender| dob| class|Parent name|parent phone|parent address
予分離成3個表,其包括這樣的:
Child_details Datatype Required Key Child_id INT AUTO_INCREMENT NOT NULL Primary Child_fname VARCHAR(15) NOT NULL Child_sname VARCHAR(15) NOT NULL Gender Enum(M,F) NOT NULL NOT NULL DoB DATE NOT NULL NOT NULL Parent/Carer id INTEGER NOT NULL Foreign Parent_details Datatype Required Key Parent_id INT AUTO_INCREMENT NOT NULL Primary Parent_title CHAR(5) Paren _fname VARCHAR(15) NOT NULL Parent/_sname VARCHAR(15) NOT NULL Parent _Add1 VARCHAR(25) NOT NULL Parent _Add2 VARCHAR(25) Parent _city VARCHAR(25) Parent _Pcode VARCHAR(15) NOT NULL Parent _phone VARCHAR(15) NOT NULL Activity Datatype Required Key Activity_name CHAR(8) NOT NULL Activity_day CHAR(5) NOT NULL
然後製成的橋接表的輥呼叫列表與活動數據。一些孩子做一類,有的做所有三個:
Schedule Datatype Required Key Child_id INT NOT NULL Foreign, Composite Activity_id INT NOT NULL Foreign, Composite
我想寫我可以運行檢查,如果我輸入的數據是正確的查詢。我希望能夠以與電子表格相同的格式查看結果。這是我想出迄今:
SELECT CONCAT_WS(' ',Child_fname,Child_sname) AS 'Child Name',
Child_gender AS 'Gender',
Child_dob AS 'DoB',
COUNT Activity_name AS Activities,
CONCAT_WS(' ',Parent_title,Parent_fname,Parent_sname) AS 'Parent/Carer name',
Parent_phone AS 'Parent/Carer phone',
CONCAT_WS(' ',Parent_add1,Parent_add2,Parent_city,Parent_pcode) AS 'Parent/Carer Address'
FROM Child,Activity,Parent;
但結果我得到顯示每個孩子做所有的活動,他們都有各自。我是否錯過了某些明顯的東西,是否需要使用COUNT DISTINCT或GROUP BY,或者我創建了錯誤的表?
任何信息任何人都可以提供將不勝感激。 我希望我提供了足夠的信息,但不是太多。
您的「活動」表似乎沒有包含「Schedule」表中的「Activity_id」字段所引用的列? – eggyal 2012-04-27 14:10:07