0

これは非常に簡単かもしれませんが、検索エンジン (google | stackoverflow) の問題を定式化する方法さえ知りません。

データベースのデータに基づいて HTML フォームを作成しようとしています。
私の問題:
これらの列を持つテーブルがあります:

  1. ID
  2. ファイル
  3. 言語
  4. 等...

データで満たされた (例):

//no < table > here
//only **file** column is really important for my select (that I am asking for)

id |    file            |  lanugage     | etc
====================================================================
1  |about.php           | english       | something
2  |conta.php           | english       | something
3  |mysql.php           | hungar        | something
4  |mysql.php           | english       | something
5  |mysql.php           | french        | something
6  |blog.php            | french        | something

配列を求めている選択後、次のようになります

0 => about.php, 1 => conta.php, 2 => mysql.php, 3 => blog.php



解決策 SELECT またはSELECT t1.file as from table as t1 group by Filesの個別のオプションを
探していましたが 、これは高速でした:)ありがとう

Files

4

5 に答える 5

1

このテーブルからファイルの一意の (異なる) 値を取得しようとしているように聞こえますか?

これを行うには、次のクエリを使用します

SELECT DISTINCT file from table_name
于 2012-08-02T15:13:45.790 に答える
1
SELECT t1.file as `Files` from table as t1 group by Files

このクエリは非常に単純なので、SQL の使い方を学ぶ必要があります。

于 2012-08-02T15:13:55.763 に答える
1

したいようですね

SELECT distinct(file) FROM mytable;

そして使用する

mysql_fetch_array()

そんな感じ:

$result=mysql_query("SELECT distinct(file) FROM mytable");
$arr=array();
while($row = mysql_fetch_array($result)){
    $arr[] = $row[0];
}
于 2012-08-02T15:14:07.490 に答える
1

これを試して:

$dbc = mysql_connect(SERVER, USERNAME, PASSWORD);
mysql_select_db($dbc, DATABASE);

$query = "SELECT DISTINCT `file` FROM `myTable`";
$result = mysql_query($dbc, $query);
于 2012-08-02T15:14:20.273 に答える
1

「ファイル」列からすべての値を取得して、それらを1つの配列に入れたいだけのようです。これを試して:

// define your database connection in the
// $SERVER, $USERNAME, $PASSWORD, and $DATABSE variables

$link = mysql_connect($SERVER, $USERNAME, $PASSWORD);
mysql_select_db($link , $DATABASE);

// I don't know what you're table name is, so put it in place of 'myTable'
$sql= "SELECT file FROM `myTable` GROUP BY file";
$result = mysql_query($link, $sql);

これは、テーブル内のすべての行の「ファイル」列のみを取得し、それらをループして結果を 1 つの配列に取得する必要があります。

$files_array = array();
while($result && $row = mysql_fetch_assoc($result)){
    $files_array[] = $row['file'];
}

これにより、探している結果の配列が出力されます。

于 2012-08-02T15:22:12.413 に答える