数据库内连接查询

时间:2015-05-07 11:52:14

标签: mysql sql database mysqli

我想从crm_ms_fir表中获取犯罪,其中条件应基于犯罪数据库详细信息类别→

crm_ms_fir(fir_id,crime_id)
crm_ms_crime(crime_id,crime_category_id,crime_name)
crm_ms_category(category_id,category_name)    

示例:向我提供所有fir报告,其中犯罪来自crime_category_id = 2

SELECT fir.fir_id,
       fir.crime_id,
       crm.crime_name
  FROM crm_ms_fir fir
 INNER JOIN crm_ms_crime crm
 INNER JOIN crm_ms_crime_category
    ON crm.category_id=3

这是我写的示例查询。

2 个答案:

答案 0 :(得分:1)

实际上,您不需要加入crm_ms_crime_category,因为crm_ms_crime中有category_id,并且不使用crm_ms_crime_category中的任何内容。也错过了ON状态。所以试试这个:

SELECT fir.fir_id, fir.crime_id, crm.crime_name
FROM crm_ms_fir fir
INNER JOIN crm_ms_crime crm ON fir.crime_id = crm.crime_id
WHERE crm.category_id=3

答案 1 :(得分:0)

你错过了JOIN条件,这里不需要crm_ms_category。

SELECT fir.fir_id, fir.crime_id, crm.crime_name
FROM crm_ms_fir fir
  INNER JOIN crm_ms_crime crm ON fir.crime_id = crm.crime_id
WHERE crm.category_id=2