我有一個名稱產品的表之一它的列名稱是design_id其中設計ID是以逗號分隔格式保存像 - 5,4,6,51,85,65, 98,32,324,122,14,755,MySQL條款在哪裏條件不起作用
我一定要找到具有設計標識98而對於這一點,我已經寫了查詢
結果SELECT * FROM `products` where `design_id` IN (98)
查詢運行成功,但沒有返回任何結果?
列類型是varchar。
我有一個名稱產品的表之一它的列名稱是design_id其中設計ID是以逗號分隔格式保存像 - 5,4,6,51,85,65, 98,32,324,122,14,755,MySQL條款在哪裏條件不起作用
我一定要找到具有設計標識98而對於這一點,我已經寫了查詢
結果SELECT * FROM `products` where `design_id` IN (98)
查詢運行成功,但沒有返回任何結果?
列類型是varchar。
例子:
<?php
$con=mysqli_connect("localhost","my_user","my_password","my_db");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql="SELECT Lastname,Age FROM Persons ORDER BY Lastname";
if ($result=mysqli_query($con,$sql))
{
// Fetch one and one row
while ($row=mysqli_fetch_row($result))
{
printf ("%s (%s)\n",$row[0],$row[1]);
}
// Free result set
mysqli_free_result($result);
}
mysqli_close($con);
?>
IN運算符遍歷數據集,因此您必須反轉查詢。
SELECT * FROM table_name WHERE 98 IN column_name
然而,在大多數數據庫中,平等的opterator要快得多。
SELECT * FROM table_name WHERE column_name=98
我不能使用這種類型的動態部分,我們不假定我們必須創建多少列。我的列結構是5,45,455,38,26,75,45, – 2014-11-01 11:33:53
SELECT * FROM table_name WHERE 98 IN(5 ,45,455,38,26,75,45) – 2014-11-01 11:35:16
是對SELECT * FROM table_name where column_name='98'
更好地使用,但是要存儲:
嘗試使用INSERT
:
INSERT INTO table_name (column1,column2,column3,...) VALUES (value1,value2,value3,...);
不過是你想獲取:
嘗試使用mysql_fetch_row
:
例子:
<?php
$con=mysqli_connect("localhost","my_user","my_password","my_db");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql="SELECT Lastname,Age FROM Persons ORDER BY Lastname";
if ($result=mysqli_query($con,$sql))
{
// Fetch one and one row
while ($row=mysqli_fetch_row($result))
{
printf ("%s (%s)\n",$row[0],$row[1]);
}
// Free result set
mysqli_free_result($result);
}
mysqli_close($con);
?>
了'IN'操作符周圍的其他方法 – 2014-11-01 11:21:46
什麼樣的領域是什麼?整數或字符串與逗號分離? – SMA 2014-11-01 11:21:49
請填寫完整代碼.. – Ali 2014-11-01 11:22:46