簡體   English   中英

MYSQL:從包含多個數據的一列中檢索所有行

[英]MYSQL: Retrieve all rows from one column containing multiple data

我在網上看了大約兩天,但不確定如何向Google問這種情況。 我正在嘗試從包含單詞“頭盔”的單個列中拉出所有行。 我得到的只有2行。 實際上大約有10行,但其中包含“腿,頭盔”之類的單詞。僅包含“頭盔”一詞的行正確填充。 我正在使用的代碼。

  id | rune_slot
  ---------------------------------
  0  | Shoulders
  ---------------------------------
  1  | Chest
  ---------------------------------
  2  | Main Hand, Off Hand, Ranged
  ---------------------------------
  3  | Helmet
  ---------------------------------
  4  | Legs, Helmet
  ---------------------------------
  5  | Helmet
  ---------------------------------
  6  | Legs, Helmet
  ---------------------------------

如您所見,這是我的桌子。 就像我說的那樣,我將獲得第3和第4行,但似乎也無法獲得第4和第6行。

$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
      die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT * FROM runes WHERE rune_slot LIKE "Helmet"' ;

mysql_select_db('runelist');
$retval = mysql_query( $sql, $conn );
if(!$retval )
{
      die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
      echo "Rune Name : {$row['rune_name']} "." Craft Level :  {$row['craft_level']} "."   Rune Slot : {$row['rune_slot']} ".
      "<br />";
} 
echo "Fetched data successfully\n";
mysql_close($conn);

這是我從http://www.tutorialspoint.com/php/mysql_select_php.htm獲得的代碼。

我嘗試了許多我知道的不同選擇語句。 我嘗試將mysql_fetch_array更改為_assoc,並瀏覽了http://www.php.net/manual/en/function.mysql-fetch-assoc.php 我猜測將多個數據放在單個列中是不好的做法? 任何幫助將不勝感激,我經常來這里學習有關PHP和MYSQL的知識,但現在我陷入了困境。 謝謝!!

您需要在查詢中使用%

  $sql = 'SELECT * FROM runes WHERE rune_slot LIKE "%Helmet%"' ;

這意味着Helmet任何組合

您在類似查詢中缺少%。 將查詢更改為“%helmet%”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM