Sql 选择带有内部连接的查询和一些pblm

Sql 选择带有内部连接的查询和一些pblm,sql,Sql,我需要特定科室的患者姓名我建议您使用表格别名,并在列名之前加上这些别名,以便始终清楚哪个列属于哪个表格 虽然这是一个简单的SELECT语句(没有什么特别之处),但最好指定使用哪个数据库 说有“一些pblm”(你的键盘坏了吗?你为什么不写“问题”)是很难调试的。运行该语句时是否有错误?如果是,哪一个 此外,如果你格式化了你写的代码,那就太好了;当它看起来更漂亮时,更容易发现罪犯。我这样做了,并且-如果其他一切都正常,表正确地连接等,或可能是其中之一,即 看看是否有帮助。如果不是,请考虑下面的指导方

我需要特定科室的患者姓名

我建议您使用表格别名,并在列名之前加上这些别名,以便始终清楚哪个列属于哪个表格

虽然这是一个简单的
SELECT
语句(没有什么特别之处),但最好指定使用哪个数据库

说有“一些pblm”(你的键盘坏了吗?你为什么不写“问题”)是很难调试的。运行该语句时是否有错误?如果是,哪一个

此外,如果你格式化了你写的代码,那就太好了;当它看起来更漂亮时,更容易发现罪犯。我这样做了,并且-如果其他一切都正常,表正确地连接等,可能是其中之一,即


看看是否有帮助。如果不是,请考虑下面的指导方针,我帮助您。< /P>请编辑您的问题,并提供相关表的定义,如“代码>创建表< /COD>语句,该表的示例数据为<代码>插入到语句中,预期的结果与该示例数据有关,逻辑背后的全面描述如何从示例数据中获得结果,并最终标记您正在使用的DBMS(包括版本)。请尝试使用sql FIDLE提供有关模式的更多上下文
SELECT DISTINCT 
    response_user, patient_name, ipno, department 
FROM 
    response 
INNER JOIN 
    patient_details ON response.response_user = patient_details.id 
INNER JOIN
    key_points ON response.response_key = key_points.kp_id
WHERE 
    department = 'CVTS' 
    AND MONTH(response_on) BETWEEN '12' AND '12' 
    AND response_key BETWEEN 146 AND 149 
    AND response_val = '5' OR response_val = '4' 
    AND kp_belongs_to = '1'  
ORDER BY
    patient_name ASC
SELECT DISTINCT response_user,
                patient_name,
                ipno,
                department
FROM response
INNER JOIN patient_details ON response.response_user = patient_details.id
INNER JOIN key_points ON response.response_key = key_points.kp_id
WHERE department = 'CVTS'
      AND month(response_on)BETWEEN '12' AND '12'
      AND response_key BETWEEN 146 AND 149
      AND (   response_val = '5'      --> OR condition should be enclosed
           OR response_val = '4'      --> into parenthesis
          )
      AND kp_belongs_to = '1'
ORDER BY patient_name ASC