具有多个条件的mysql搜索

时间:2012-06-27 15:33:22

标签: mysql

需要一些帮助编写查询,因为我的数据库包含1000条记录记录。

基本上我有一个包含以下字段的数据库

entryID

日期

toothNumber

procedureName

studentName

tutorName

isolationSkill

isolationKnowledge

cavitySkill

cavityKnowledge

matrixSkill

matrixKnowledge

restorativeSkill

restorativeKnowledge

我想编写一个搜索所有记录以查找特定名称的查询(例如“Joe Bloggs”),而procedureName包含“Class II”

最重要的是,我希望它返回值N,B和C出现在isolationskill - restorativeKnowldge列中的次数。

所以最后我可以看到像这样的列表

希望这是有道理的。如果您需要更多信息,请与我们联系。

提前致谢

1 个答案:

答案 0 :(得分:0)

我觉得这样的东西会给你你想要的东西,而不是你想要看的东西,有点难以辨别,但这会像正常一样弹出所有的行,然后给你一个计数字段每个给定的值n,B,C字段。多次应用此语法,以获得您在不同字段中查找的确切结果。

SELECT 
entryID, 
date, 
procedurename, 
studentName, 
tutorName, 
restorativeSkill, 
isolationKnowledge, 
cavitySkill, 
cavityKnowledge, 
matrixSkill, 
matrixKnowledge,
restorativeknowledge,
SUM(IF(isolationSkill = 'N', 1,0)), 
SUM(IF(restorativeKnowldge = 'B', 1,0)) FROM records 
WHERE procedureName = 'Class II' and Name = "Joe Bloggs";