[英]Fetching SQL rows by conditions
我試圖通過一些條件獲取一些行,但它不能按我的意願工作; 請查看我的代碼並分享您的想法。
$query = mysqli_query($sqli,"SELECT * FROM `table` WHERE
`name` = '$nameFA' OR
`name` = '$nameLA' OR
`ft` LIKE '%$nameFA%' OR
`ft` LIKE '%$nameLA%' AND
`information` LIKE '%$info%'
");
如您所見, name
和ft
的輸入可能有兩個不同的值。 如果information
有類似$info
變量的東西,則應該獲取行。
試試這種方式:
$query = mysqli_query($sqli,"SELECT * FROM `table` WHERE
(`name` = '$nameFA' OR
`name` = '$nameLA' OR
`ft` LIKE '%$nameFA%' OR
`ft` LIKE '%$nameLA%')
AND `information` LIKE '%$info%'
");
或者這樣,因為我不知道你想做什么,我們不知道如何放置括號:
$query = mysqli_query($sqli,"SELECT * FROM `table` WHERE
`name` = '$nameFA' OR
`name` = '$nameLA' OR
`ft` LIKE '%$nameFA%' OR
(`ft` LIKE '%$nameLA%' AND
`information` LIKE '%$info%'
)
");
在語句中有多個AND OR AND時, 總是添加括號。
考慮:
a或b和C在以下情況下是真的:(你是狗,或者你在吠叫)而且你正在走路
當你是一只狗,或者(吠叫和行走)時,OR(b和C)是真的
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.