2012-02-13 3 views
0

두 개의 사용자 입력, violation_typevehicle이 있습니다. MATLAB에서 보고서를 만들기 위해 백엔드 데이터베이스에 이러한 변수를 전달하고 싶습니다. 하나의 변수를 시도하고 잘 작동하지만 사용자 검색에 따라 데이터베이스 레코드를 필터링하는 여러 변수를 전달하는 방법을 모르겠습니다.SQL 쿼리에서 많은 변수를 전달하십시오.

차량 = '자동차';
위반 _type = 'U 턴';


'licence_plate_details FROM lic.licence_plate_num, lic.owner_name, lic.owner_address, lic.owner_tel_no, lic.owner_email, vio.violation_date, vio.violation_time, vio.vehicle_type, vio.violation_type을 선택 LIC RIGHT는 가입 violated_vehicles VIO ON lic.licence_plate_num = vio.licence_plate_num 곳 vio.vehicle_type = '' ', 차량,'

답변

1

사용 '및 키워드 여러 기준에 대한 SQL 쿼리' '. SPRINTF MATLAB 함수를 사용하여 변수 매개 변수를 삽입 할 수 있습니다. 또한 가독성을 높이기 위해 쿼리를 여러 하위 문자열로 분리했습니다.

sql = sprintf([ ... 
    'SELECT lic.licence_plate_num, lic.owner_name, lic.owner_address, '... 
    'lic.owner_tel_no, lic.owner_email, vio.violation_date, '... 
    'vio.violation_time, vio.vehicle_type, vio.violation_type '... 
    'FROM licence_plate_details lic RIGHT JOIN violated_vehicles vio '... 
    'ON lic.licence_plate_num = vio.licence_plate_num '... 
    'WHERE vio.vehicle_type = "%s" AND vio.violation_type = "%s"' ], ... 
    vehicle, violation_type); 
관련 문제