처음에 테이블 이름을 모르는 경우 어떻게 테이블의 데이터를 검색 할 수 있습니까?
그래서 나는 이미 테이블 이름을 알고 있고, SHOW TABLES
과 같은 것을 필요로하지 않는다고 가정합니다. 예 : 형태
WHERE (table1.field LIKE '%search%' OR table2.field2 LIKE '%search%' OR ...)
한번의 WHERE
당신이 그것을 일치 알고 행을 검색하지만, 경기가 발생했던 위치를 알 수 없습니다. 그리고 JOINed 대신 8 개의 직선 쿼리를 실행하는 것은 옵션이 아닙니다. 행을 검색 할 때
이
SELECT ..., CASE
WHEN accounts.field1 LIKE '%search%' THEN 'accounts'
WHEN customers.name LIKE '%search%' THEN 'customers'
...
END AS wtf FROM <rest of your query>
그런 다음 PHP에서, 당신은 단지 필드를 사용합니다 :이 경우
, 당신은 당신이 필요한 당신에게 플래그로 선택한 필드를 보충해야합니다 : 그는 테이블의 이름을 원하는 :
print "Value found in {$row['wtf']}";
선택 개별적으로 각 테이블에서, 당신은 – slugonamission
@slugonamission을 원하는 데이터를 포함하는 확인하십시오. –
죄송합니다. 나는 그가 원하는 행이 들어있는 테이블로 해석했습니다. – slugonamission