2013-03-21 53 views
0

这里计数未在列中输入的值是表查询在Access

CREATE TABLE STUDENT 
(
School_ID char(3), 
St_LastName char(15), 
St_FirstName char(15), 
St_DOB char(15), 
St_SS# char(15), 
St_Address char(15), 
St_City char(15), 
St_State char(2), 
st_Zip char(5), 
st_phone char(15) 
); 

我必须写查询:确定有多少学生没有一个电话。

我在ACCESS

SELECT STUDENT.School_ID 
FROM STUDENT 
WHERE STUDENT.st_phone NOT IN(SELECT STUDENT.st_phone, Count(STUDENT.st_phone) AS StudentWithNoPhone FROM STUDENT 
GROUP BY STUDENT.st_phone); 

写下面的查询,但它不工作。

+0

计数或列表? – Fionnuala 2013-03-21 20:47:31

+0

如果学生有更多的两个st_phone值,他们会在学生中有两个记录吗? – 2013-03-21 20:53:34

回答

2
SELECT STUDENT.School_ID 
FROM STUDENT 
WHERE STUDENT.st_phone IS NULL OR STUDENT.st_phone = '' 

或者我误解了你的问题?

+0

如果OP确实需要一个计数,那么很容易将查询转换为一个查询。 – Fionnuala 2013-03-21 20:49:50

+0

我认为这是'COUNT(STUDENT.School_ID)''因为问题询问*确定有多少学生*,但其他方面是正确的 – 2013-03-21 20:51:51

+0

它不工作..查询应计算未输入st_phone的occorunces – 2013-03-21 20:56:12