連表查詢(3)之根據相關條件,查詢另外一個表或多個表的某字段
1、送檢單位
代理商是從代理商表中取得數據
銷售人員從銷售表中取得數據
說一個簡單的思路:
sql語句找到連接兩個表的條件,把另外一個表要用到的字段 寫一個
<resultMap type="com.biodx.bus.inspectionUnit.model.Agent" id="agentBaseResultMap">
<result column="ID" property="id" jdbcType="VARCHAR" />
<result column="NAME" property="name" jdbcType="VARCHAR" />
<result column="CODE" property="code" jdbcType="VARCHAR" />
</resultMap
a、然後在inspection的字段裏加上自己需要代理商表的字段,然後在inspection的resultMap加入這兩個字段,然後在model添加get set方法 這樣就能在數據庫獲取這兩個字段了,然後在html頁面把這兩個字段分別換上,就會顯示代理商和銷售人員的名字,而不顯示code
<sql id="Base_Column_List" >
ID, CODE, CHINA_NAME, ENGLISH_NAME, SPELL_NAME, AGENT_CODE, SALE_CODE, PROVINCE_CODE,
CITY_CODE, AREA_CODE,CREATER,TO_CHAR(CREATE_TIME , ‘yyyy-mm-dd‘) AS CREATE_TIME,a.name as aName,s.name as sName
</sql>
b、如過沒有獲取這兩個表的數據,那就需要在controller 的list添加方法,即:獲取代理商name的service
List<Agent> list = agentService.list(para);
model.addObject("list", list);
連表查詢(3)之根據相關條件,查詢另外一個表或多個表的某字段