MySQL에서는 string functions을 사용할 수 있습니다. 귀하의 예를 들어, 당신은 당신의 데이터베이스 엔진에 대한 유사한 기능을 검색 할 수 LPAD
SELECT LPAD(`id`, 4, '0') FROM patient_db_0004
을 시도 할 수도 있습니다.
는
샘플 출력 :
mysql> SELECT LPAD(`id` , 4, '0') FROM `patient_db_0004` LIMIT 10;
+---------------------+
| LPAD(`id` , 4, '0') |
+---------------------+
| 0001 |
| 0002 |
| 0003 |
| 0004 |
| 0005 |
| 0006 |
| 0007 |
| 0008 |
| 0009 |
| 0010 |
+---------------------+
10 rows in set (0.00 sec)
(I있어이 AUTO_INCREMENT 필드 위의 예에서 id
라고도 함)
편집 : 귀하의 의견에 따라, 그것은 Vincent's answer 것 같다 당신이 찾고있는 무슨이다 대한 :
<?php
$term = 'foobar';
for($i=1; $i<5; $i++)
{
echo(sprintf("SELECT * FROM patient_db_%04d WHERE MATCH (Name, id_number) AGAINST ('$term' IN BOOLEAN MODE);\n", $i));
}
?>
내게 준 :
SELECT * FROM patient_db_0001 WHERE MATCH (Name, id_number) AGAINST ('foobar' IN BOOLEAN MODE);
SELECT * FROM patient_db_0002 WHERE MATCH (Name, id_number) AGAINST ('foobar' IN BOOLEAN MODE);
SELECT * FROM patient_db_0003 WHERE MATCH (Name, id_number) AGAINST ('foobar' IN BOOLEAN MODE);
SELECT * FROM patient_db_0004 WHERE MATCH (Name, id_number) AGAINST ('foobar' IN BOOLEAN MODE);
제대로 이해하면 이러한 쿼리를 실행하려고합니다. 따라서 여기에 대해 고려해야 할 사항은 다음과 같습니다.
<?php
// ...
for($i=1; $i<5; $i++)
{
$query = sprintf("SELECT * FROM patient_db_%04d WHERE MATCH (Name, id_number) AGAINST ('$term' IN BOOLEAN MODE);\n", $i);
$sql = mysql_query();
}
?>
그래서 'patient_db_0004', patient_db_0005, patient_db_0006 - 자동으로 선택할 수 있습니까? – iamwhitebox
아마도 귀하의 질문에 대한 오해가있었습니다. 내 대답을 편집했습니다. 희망이 도움이됩니다. – Umang