国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

mysql - SQL能這樣表示嗎?

瀏覽:109日期:2022-06-21 16:35:25

問(wèn)題描述

SELECT * FROM shop WHERE id=8;

這條會(huì)輸出本表中id=8的結(jié)果;請(qǐng)問(wèn)怎么輸出全部結(jié)果?

就是

SELECT * FROM shop

只不過(guò)必須有 where id=???

???也就是通配符,任意值..

我問(wèn)這個(gè)的意思是用預(yù)處理語(yǔ)句

$sql='SELECT id FROM shop2 WHERE name=? and id = ? and model = ?';$stmt=$pdo->prepare($SQL);$name=某值;$id=某值;$models=某值;$stmt->execute( array($name,$id,$models) );

然后有時(shí)候,只需要 name 就能找到,有時(shí)候需要 name,model 才能找到,有時(shí)候需要 id ,name,model 才行.

我就想,只需要修改 成一個(gè)通配符 就可以不動(dòng) $sql 語(yǔ)句了’

如果這樣不行,那只能重新編輯 sql 語(yǔ)句,用 字符串連接的方法弄了..弄成 :

$sql='SELECT id FROM shop2 WHERE ';$idstr = $id ? 'id = {$id}' :'';$namestr = $name ? 'name = {$name}' :'';$modelstr= $model ? 'model = {$models}' : '';$arr=Array($idstr,$namestr,$modelstr);$arr = Array_Filter($arr);$sql.=implode(' AND ',$arr);$stmt=$pdo->query($sql);

這樣比較麻煩,我就想有簡(jiǎn)單的辦法嗎?

大家告訴我有這個(gè)辦法嗎?

問(wèn)題解答

回答1:

不太懂題主意思。一般在代碼里拼sql都會(huì)這樣寫SELECT * FROM TABLE WHERE 1 = 1,然后再根據(jù)查詢條件拼接AND id = ?和其他條件,這樣就算id為空也不至于發(fā)生sql語(yǔ)法錯(cuò)誤。寫完后才覺(jué)得題主好像是想做sql注入……- -!

回答2:

SELECT * FROM shop WHERE 1;

這樣應(yīng)該能夠把全部的結(jié)果輸出。

回答3:

在java中,有mybatis這樣的框架來(lái)處理類似參數(shù)個(gè)數(shù)不確定的請(qǐng)求,具體用法可以自己百度。如果php中沒(méi)有類似的框架,最好的是自己寫一個(gè)拼接sql字符串、綁定變量的方法,php不熟悉,寫一個(gè)示例js代碼:第一參數(shù)為不帶任何條件的sql語(yǔ)句(如select * from table1),第二個(gè)參數(shù)為key-value類型的參數(shù)值

function executeSql(sql, params) { var sql_text = sql; var sql_where = []; var sql_params = []; for (var key in params) { if (params[key] !== null || params[key] !== undefined) { sql_where.push(key + ’=?’); sql_params.push(params[key]); } } if (sql_where.length > 0) { sql_text += ’ WHERE ’ + sql_where.join(’ AND ’); } stmt = $pdo->prepare(sql_text); stmt->execute(sql_params);}回答4:

SELECT * FROM shop;

where子句可選

回答5:

SELECT * FROM shop;

回答6:

select * from shop where id like ’%’

回答7:

SELECT * FROM TABLE_NAME //不加查詢條件也是可以的

相關(guān)文章:
主站蜘蛛池模板: 大冶市| 武山县| 驻马店市| 泰顺县| 望都县| 阿坝县| 鄂托克前旗| 玛沁县| 房山区| 东莞市| 厦门市| 东兴市| 巨野县| 淮滨县| 丰城市| 南平市| 蓝田县| 伊川县| 达尔| 彭山县| 承德市| 漯河市| 治多县| 区。| 屯昌县| 肥乡县| 云和县| 临泉县| 惠州市| 小金县| 驻马店市| 山阴县| 神木县| 来凤县| 镇宁| 册亨县| 东至县| 盐边县| 连云港市| 莱阳市| 东莞市|