我想您在哪裏輸入參數的URL查詢字符串,並將其搜索一個隨機引用我的MySQL數據庫(存儲報價從一個IRC頻道),在一個像進入了一個變量但無法使用我正在使用的查詢搜索多個列。我希望它搜索的表格中的兩個字段是「title」和「quote」。有沒有更好的方法來做到這一點?現在,我只是爲了測試目的而去頁面確認輸出。下面的代碼工作正常,因爲如果僅僅搜索「title」或「quote」字段。多列WHERE子句
app.get("/api", function(req, res){
var search = "%" + req.query.search + "%";
var queryString = "SELECT * FROM quotes WHERE title LIKE ? ORDER BY RAND() LIMIT 1";
var queryString = mysql.format(queryString, search);
mysqlPool.getConnection(function(err, connection) {
if(err) throw err;
connection.query(queryString, function(err, rows, fields){
if (!err){
res.send('<xmp>' + JSON.stringify(rows[0], null, 2) + '</xmp>');
connection.release();
} else {
console.log('Error while performing Query.');
connnection.release();
}
});
});
});
我試着下面這樣做,但顯然是行不通的:輸出
var queryString = "SELECT * FROM quotes WHERE (title OR quote) LIKE ? ORDER BY RAND() LIMIT 1";
例如只有「稱號」這裏搜索只是爲了得到一個想法:
{
"id": 3947,
"nick": "o_O",
"host": "o_O``[email protected]*.ma.cable.rcn.com",
"title": "gix.flesh.eating.bacteria",
"quote": "<gix> omg my face is like 10lbs lighter",
"channel": "#motorcycles",
"timestamp": 1205791192
}