2012-04-18 1 views
0

다음 코드에서 'IN'+ Village +를 추가하고 싶습니다. 코드에서이 조건을 추가 할 위치입니다. 변수 마을은 해당 필터를 기반으로 드롭 다운 목록에서 값을 가져옵니다. 도움이 필요합니다. 임대 이름은 내 융합 표의 열입니다.
즉 테이블에서 '기하학', villageName을 선택한 경우 querypass> textvalue IN villagename = '마두 라이'융합 표의 'IN'쿼리

function querymape() 
     { 
     /*variable holds the value*/ 
     var village =document.getElementById('village').value.replace(/'/g, "\\'"); 
     var operatore=document.getElementById('operatorstringe').value.replace(/'/g, "\\'"); 
     var textvaluee=document.getElementById("text-valuee").value.replace(/'/g, "\\'"); 
     var querypasse=document.getElementById('query-passe').value.replace(/'/g, "\\'"); 

      { 
      layer.setQuery("SELECT 'geometry'," + querypasse + " FROM " + tableid + " WHERE " + querypasse + " " + operatore + " '" + textvaluee + "'"+"AND 'VillageName=+village+'"); 
      } 


    } 

/*This is my new code.But its not working.Please help me*/ 
function querymap() 
{ 
//var villagename=''; 
var operator=document.getElementById('operatorstring').value.replace(/'/g, "\\'"); 
var textvalue=document.getElementById("text-value").value.replace(/'/g, "\\'"); 
var querypass=document.getElementById('query-pass').value.replace(/'/g, "\\'"); 
var searchStringe = document.getElementById('Search-stringe').value.replace(/'/g, "\\'"); 
    { 
    layer.setQuery("SELECT 'geometry'," + querypass + " FROM " + tableid + " WHERE " + querypass + " " + operator + " '" + textvalue + "'"+"AND 'VillageName'="+ searchStringe+""); 
    } 

} 

답변

0
  1. 여러 조건 키워드 ""를 사용하여 결합 할 수 있는가?
  2. 당신은 여러 값과 일치 할 경우에만 " =는"대신

가 쿼리에 적용 단일 값 사용에 비교하려는 경우는 (와, 사용, 주위 IN 구문을 트위스트) 구문 :와

 select 'geometry',villageName from table where querypass > textvalue and villagename IN ('madurai','another village') 

= 구문 :

 select 'geometry',villageName from table where querypass > textvalue and villagename = 'madurai' 
+0

이 것은 ..... layer.setQuery 작동하지 않습니다 (+ querypass " '기하학', SELECT" + "FROM"+ tableid + "WHERE"+ querypasse + ""+ operatore + " '"+ textvaluee + "'"+ "AND 'VillageName = + village +'"); – 7783

+0

layer.setQuery ("선택 '기하학',"+ 쿼리 패스 + "FROM"+ tableid + "어디에서"+ querypass + ""+ 연산자 + " '"+ textvalue + "'"+ "AND 'VillageName'="+ " searchStringe + ""); – 7783

+0

문자열 매개 변수를 따옴표로 묶고 변수 및 열의 이름을 올바르게 지정하십시오 (querypass 대 querypasse, villagename 및 VillageName). 이것은 작동해야합니다 : layer.setQuery ("SELECT 'geometry',"+ querypass + "FROM"+ tableid + "WHERE"+ querypass + ""+ operator + " '"+ textvalue + "'and VillageName = '"+ searchStringe + " '"); – Odi