唯一我有了這樣的列MySQL表:檢測一個數字是在MySQL/PHP數據庫
ID
-----
0352
5432
4382
3520
30593
3992
295
我要檢測一個特定數量的存在與否。
注意:該表格不僅僅是ID列。
例如
$num = 5432
if($num IS IN ID) {
// code
} else {
// code
}
唯一我有了這樣的列MySQL表:檢測一個數字是在MySQL/PHP數據庫
ID
-----
0352
5432
4382
3520
30593
3992
295
我要檢測一個特定數量的存在與否。
注意:該表格不僅僅是ID列。
例如
$num = 5432
if($num IS IN ID) {
// code
} else {
// code
}
$result = mysql_query("SELECT ID FROM table WHERE ID = '5432'");
$num_rows = mysql_num_rows($result);
if ($num_rows > 0) {
// number is in the table
} else {
// number is not in the table
}
非常感謝 – Talon 2012-03-21 04:39:24
使用數查詢
SELECT COUNT(1) FROM `table` WHERE `ID` = 5432;
然後,您可以決定...
PDO實例
$stmt = $pdo->prepare('SELECT COUNT(1) FROM `table` WHERE `ID` = ?');
$stmt->bindParam(1, $num);
$num = 5432;
$stmt->execute();
$count = $stmt->fetchColumn();
switch ($count) {
case 0 :
// does not exist
break;
case 1 :
// exists and unique
break;
default :
// exists, not unique
}
+1使用PDO! – Anthony 2012-03-21 04:00:03
$result = mysqli_query("SELECT id FROM table WHERE id = {$num}");
if (mysql_num_rows($result)) {
//already exists
} else {
//does not exist
}
好, 你總是可以執行一個查詢到DB這樣的:
SELECT COUNT(ID) AS cnt WHERE ID = [your id]
然後,早在PHP中,從$ row變量(例如ju)中獲取查詢結果後ST siply檢查
if ($row['cnt'] > 1)
菲爾的答案是當場就,如果你事先知道的ID。如果你想在事先都是獨一無二的ID從表列表(假設這不是一個潛在的內存問題),您可以使用此查詢:
SELECT `ID`, COUNT(`ID`) AS `IS_UNIQUE` FROM `table`
GROUP BY `ID` HAVING `IS_UNIQUE` = 1;
這將返回出現一次所有ID在桌子裏。
你是如何得到要檢查的數字? – hjpotter92 2012-03-21 03:48:49
'如果數字存在與否'和'檢測數字是否唯一'是不同的任務 – 2012-03-21 03:55:32
k感謝您的智慧... – Talon 2012-03-21 16:22:26