UPDATE bmd_layer_tiles \n\
SET ScaleSubLevel = (SELECT bls.ScaleValue \n\
FROM bmd_layer_scalesublevel bls \n\
WHERE " + tblJoin + " \n\
AND ( (bls.ISOConCode = '---') \n\
OR (bls.ISOConCode = bmd_layer_tiles.ISOConCode) )) \n\
WHERE bmd_layer_tiles.featureClass != " +
Ndh2NDS::LexicalCast<std::string>( Layer::finishNDS->m_attrConvert->convert( Ndh2NDSGlobal::POINT_CITY_CENTRE ) ) +
" AND bmd_layer_tiles.featureClass != " +
Ndh2NDS::LexicalCast<std::string>( Layer::finishNDS->m_attrConvert->convert( Ndh2NDSGlobal::POINT_CITY_DISTRICT_CENTRE ) ) +
" AND bmd_layer_tiles.featureClass != " +
Ndh2NDS::LexicalCast<std::string>( Layer::finishNDS->m_attrConvert->convert( Ndh2NDSGlobal::POINT_HAMLET ) ) +" \
AND EXISTS (SELECT 1 \n\
FROM bmd_layer_scalesublevel bls \n\
WHERE " + tblJoin + " \n\
AND ( (bls.ISOConCode = '---') \n\
SET ScaleSubLevel = (SELECT bls.ScaleValue \n\
FROM bmd_layer_scalesublevel bls \n\
WHERE " + tblJoin + " \n\
AND ( (bls.ISOConCode = '---') \n\
OR (bls.ISOConCode = bmd_layer_tiles.ISOConCode) )) \n\
WHERE bmd_layer_tiles.featureClass != " +
Ndh2NDS::LexicalCast<std::string>( Layer::finishNDS->m_attrConvert->convert( Ndh2NDSGlobal::POINT_CITY_CENTRE ) ) +
" AND bmd_layer_tiles.featureClass != " +
Ndh2NDS::LexicalCast<std::string>( Layer::finishNDS->m_attrConvert->convert( Ndh2NDSGlobal::POINT_CITY_DISTRICT_CENTRE ) ) +
" AND bmd_layer_tiles.featureClass != " +
Ndh2NDS::LexicalCast<std::string>( Layer::finishNDS->m_attrConvert->convert( Ndh2NDSGlobal::POINT_HAMLET ) ) +" \
AND EXISTS (SELECT 1 \n\
FROM bmd_layer_scalesublevel bls \n\
WHERE " + tblJoin + " \n\
AND ( (bls.ISOConCode = '---') \n\
OR (bls.ISOConCode = bmd_layer_tiles.ISOConCode) ));
通过EXISTS 外部设定查询条件。