Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

PHP, MySQL, PILIH pertanyaan

Saya pikir cara terbaik untuk melakukannya adalah dalam kode PHP, bukan dalam SQL.

Anda dapat mencapai ini hanya dengan membuat array asosiatif di PHP, menggunakan bidang "teks" sebagai kunci, yang berisi data yang Anda inginkan - dan mengisinya saat Anda menarik informasi dari database.

Contoh:

SQL:SELECT * FROM myTable

Kode PHP:

<?php

// Connect to MySQL database
$result = mysql_query($sql_query_noted_above);
$stringsInfo = array();
while ($row = mysql_fetch_assoc($result))
{
    if (!isset($stringsInfo[$row['text']]))
    {
        $stringsInfo[$row['text']] = array('types' => array(), 'idAccounts' => array());
    }

    $stringsInfo[$row['text']]['types'][] = $row['type'];
    $stringsInfo[$row['text']]['idAccounts'][] = $row['idAccount'];
}

?>

Ini akan memberi Anda sebuah array sebagai berikut:

'myTextString' => 'types' => 'type1', 'type2', 'type3'
                  'idAccounts' => 'account1', 'account2'

'anotherTextString' => 'types' => 'type2', 'type4'
                       'idAccounts' => 'account2', 'account3'

dan seterusnya.

Semoga bermanfaat.

EDIT:Poster meminta bantuan dengan tampilan.

<?php

foreach ($stringsInfo as $string => $info)
{
    echo $string . '<br />';
    echo 'Types: ' . implode(', ', $info['types']); // This will echo each type separated by a comma
    echo '<br />';
    echo 'ID Accounts: ' . implode(', ', $info['idAccounts']);
}

/* Atau, Anda dapat mengulang setiap larik yang terdapat dalam $info jika Anda membutuhkan lebih banyak kontrol */

foreach ($stringsInfo as $string => $info)
{
    echo $string . '<br />';
    echo 'Types: ';
    foreach ($info['types'] as $type)
    {
        echo $type . ' - ';
    }
    echo '<br />';
    echo 'ID Accounts: '
    foreach ($info['idAccounts'] as $idAccount)
    {
        echo $idAccount . ' - ';
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tipe Data ENUM (Enumeration) di MySQL:12 Fakta Teratas dan Tips Berguna

  2. Apakah ruang yang ditempati oleh baris yang dihapus dapat digunakan kembali?

  3. Cara terbaik untuk menyimpan permintaan pencarian pengguna di ElasticSearch?

  4. MYSQL - hitung jumlah baris di setiap tabel

  5. Pesan sebelum CONCAT_WS