下面的代碼將顯示我的數據庫中的表中的John,Steve和Pat。我希望它只顯示約翰和史蒂夫。如何從我的數據庫中的表中選擇[somename]
$result = @mysql_query("SELECT * FROM name");
$line = @mysql_fetch_array($result);
$users = $line[user];
echo "$users";
下面的代碼將顯示我的數據庫中的表中的John,Steve和Pat。我希望它只顯示約翰和史蒂夫。如何從我的數據庫中的表中選擇[somename]
$result = @mysql_query("SELECT * FROM name");
$line = @mysql_fetch_array($result);
$users = $line[user];
echo "$users";
您需要在SQL查詢中使用WHERE子句。
SELECT * FROM name WHERE somecolumn=somevalue;
對於這個奇怪的例子,你可以改變你的查詢:
select * from name where name in ('Steve','John')
或
select * from name where name <> 'Pat'
我不知道這是否是你想要的,但你可以過濾通過匹配名稱中的SQL正是如此列表:
SELECT * FROM name WHERE name IN ('John', 'Steve')
這假定您的表格被稱爲name
,並且包含用戶名稱的列也被稱爲name
。
我不得不想知道你在這裏想達到什麼,還有一些其他有用的信息是你想從用戶記錄中獲得的嗎?還是應該限制基於超出名稱的其他標準返回的用戶?
$result = @mysql_query("SELECT * FROM name LIMIT 2");
SELECT * FROM name WHERE [column_name] = 'john' OR [column_name] = 'Steve'
這就是你想要的?有幾個注意事項:
[column_name]
被比較,因爲這是不是在你的代碼中指定的上方。SELECT *
。選擇實際的列名通常是更好的做法。在數據庫上工作稍微少一些,模式更改時不會輕鬆破壞等。UPDATE:校正,MySQL是不區分大小寫。因此,上述#3不應該成爲這種環境下的問題。
你永遠不要執行`@ mysql_query`!很高興看到SQL錯誤,所以你可以修復它們。 – 2011-02-04 18:19:17
你不應該再使用mysql擴展。你應該使用mysqli或PDO。 – Erik 2011-02-04 18:20:20
在使用它之前,您應該閱讀SQL。這被稱爲`WHERE`子句。 – 2011-02-04 18:21:40