Angenommen, Sie haben die folgende Tabelle "Geschäfte"
shop_cd | prefecture |
---|---|
0001 | Präfektur Kanagawa |
0002 | Präfektur Kanagawa |
0002 | Präfektur Kanagawa |
0003 | Präfektur Kanagawa |
0003 | Präfektur Kanagawa |
0004 | Tokio |
Ich möchte eine eindeutige Liste von Geschäftscodes, in denen "Präfektur Kanagawa" angegeben ist.
public interface ShopMapper {
/**
*Holen Sie sich eine Liste der Geschäftscodes, indem Sie die Präfektur angeben.
*
* @return List<Map<String, String>>
*Karte pro Ergebnis
* - prefecture:Angegebener Präfekturname (Japanisch)
* - shopCd:Site-Code
*/
@SelectProvider(type = SqlProvider.class, method = "getShopCodesByPrefecture")
@Results(id = "ShopCodesByPrefecture", value = {
@Result(column = "shop_cd", property = "shopCd"),
@Result(column = "prefecture", property = "prefecture"),
})
List<Map<String, String>> getShopCodesByPrefecture(String brandCd, String prefecture);
class SqlProvider {
public String getShopCodesByPrefecture(String prefecture) {
SQL sql = new SQL() {
{
SELECT("shop_cd", "prefecture");
FROM("shops");
WHERE("shops.prefecture = #{prefecture}");
GROUP_BY("shop_cd");
ORDER_BY("shop_cd ASC");
}
};
return sql.toString();
}
}
}
Ich habe @Results und @Result angegeben, damit die Suchergebnisse in Map abgerufen werden können.
Recommended Posts