亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

搜索然后對值進行排序

搜索然后對值進行排序

PHP
一只名叫tom的貓 2023-07-08 17:54:10
我嘗試使用條件搜索值,然后對所有可用值進行排序。但是當我排序時,所有值都被重置。這是我選擇 mysql 。 SELECT * FROM tbProduct WHERE name = '%ASUS%' 返回值是 1 - Asus TUF, 5 - Asus zep, 7 - Asus 然后我單擊排序 mysql 返回 SELECT * FROM tbProduct ORDER BY id DESC。但不是:SELECT * FROM tbProduct WHERE name = '%ASUS%' ORDER BY id DESC 返回值是 9 - Asus TUF, 8 - Linux, 7 - Asus, 6 - MSI, 5 - Asus zep, 4 - MacBook, 3 - DELL, 2 - ACER, 1 - Asus 有什么方法可以對搜索結果進行排序嗎?如果您有想法請告訴我。謝謝
查看完整描述

2 回答

?
拉風的咖菲貓

TA貢獻1995條經驗 獲得超2個贊

從您的問題來看,您似乎在獲取結果后單擊排序。這會運行另一個查詢,而前一個查詢會丟失。

要獲得所需的結果,您必須在第一個查詢本身中使用 Sort 語句。

這意味著你必須跑。

SELECT * FROM tbProduct WHERE name = '%ASUS%' ORDER BY id DESC;

位列第一。不要期望在任何基于 GUI 的數據庫交互中運行一個查詢,然后運行另一個查詢,并希望它將從新查詢中返回結果的子集。


查看完整回答
反對 回復 2023-07-08
?
子衿沉夜

TA貢獻1828條經驗 獲得超3個贊

假設你的id價值觀是這樣的:


9 - Asus TUF

您可以嘗試僅使用數字部分進行排序:


SELECT *

FROM tbProduct

WHERE name = '%ASUS%'

ORDER BY CAST(SUBSTRING_INDEX(id, ' ', 1) AS UNSIGNED);


查看完整回答
反對 回復 2023-07-08
  • 2 回答
  • 0 關注
  • 154 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號