mysqlステートメントが任意のテーブルから任意のフィールドを選択することは可能ですか?例:
SELECT * FROM * WHERE ? IN (SELECT * FROM *)
特定のテーブルまたはフィールドに依存しない一般的な検索メソッドを実装します。SQLコマンドを使用してデータベースのすべてのテーブルを一覧表示できることを読みましたSHOW TABLES
。これを行う方法について何か考えがありますか?ありがとうございました :)
user1079425
質問する
1012 次
2 に答える
0
プロシージャを作成し、動的クエリメカニズムを使用します(例:以下)。
CREATE PROCEDURE dynamicQuery()
BEGIN
SET @tableName := 'TABLENAME1';
SET @SqlStr = 'SELECT * FROM @tableName';
PREPARE n_StrSQL FROM @SqlStr;
EXECUTE n_StrSQL;
DEALLOCATE PREPARE n_StrSQL;
END
于 2012-10-23T17:43:56.290 に答える
0
あなたはphpでこのようなことを試すことができます
$getTables = mysql_query("show tables");
$tmpString = '';
while ($table_data = mysql_fetch_row($getTables))
{
$tmpString.=$table_data[0].',';
}
$ALL_DATABASE_TABLES = substr($string,0,strlen($tmpString)-1); //Remove the last ,
次に、すべてのテーブルを取得して、クエリを作成できます
このような
$qry = "SELECT * FROM $ALL_DATABASE_TABLES"
于 2012-10-23T17:48:57.650 に答える