• Main navigation
登入區塊
帳號:

密碼:

記住我



忘記密碼?

現在註冊!
網站資訊區塊
站務管理者

kiang
 

tokimeki
 

sam0228
 

morris
 

shiang
 

SoltyRain
 

廣告





查詢結果附上條件?
Not too shy to talk
註冊日期:
2006/10/26 2:12
文章: 26
簡單的說就是...
資料表只有兩個欄位~id,name

括號內【乙,丙,甲】就是使用者在文字欄位所填的查詢..使用者想從資料庫欄位"name"一次查出乙,丙,甲的資料.
當資料查出後,輸出如下:
001 乙
002 甲
003 甲
------------------------------
我想問的是~
如何在輸出時,多增加一項資訊,括號文字欄位內的順序,也就是乙和甲在文字欄位中的順序是1和3~那我希望輸出時變成這樣.
001 乙 1
002 甲 3
003 甲 3
------------------------------
該怎用呢??

發表日期:2007/6/10 14:23
應用擴展 工具箱


回覆: 查詢結果附上條件?
Just can't stay away
註冊日期:
2006/12/26 8:48
文章: 144
確實可以在查詢結果中添加其他資訊...
例:
SELECT id, name, (id + 1) AS nid FROM xyz;

但是你的 case ... 沒有。
因為 SQL 認為沒有必要這麼做。
SQL 說,你可以排序,排序之順序就是你要的順序資訊。

例如:
SELECT id, name FROM xyz ORDER BY name;

發表日期:2007/6/11 9:03
應用擴展 工具箱


回覆: 查詢結果附上條件?
網站管理員
註冊日期:
2005/9/8 17:37
文章: 691
$a = array("乙" => 1, "丙" => 2, "甲" => 3);
$a[資料表欄位['name']]

發表日期:2007/6/11 17:24
應用擴展 工具箱


回覆: 查詢結果附上條件?
Not too shy to talk
註冊日期:
2006/10/26 2:12
文章: 26
引用:

sam0228 寫道:
$a = array("乙" => 1, "丙" => 2, "甲" => 3);
$a[資料表欄位['name']]


嗯?關聯陣列~小弟有寫了...但會有error ?感覺快對了..但怪怪的..

<?
$name=explode(',',$_POST['name']);
$query "";
//下面這是分割逗號用
for($i=0;$i<count($name);$i++)
{
   
$name[$i] = mysql_escape_string($name[$i]);
   
$query.="'$name[$i]',"
   [
color=CC0000]$eye = array($i=>$name);[/color
}

.
.

.
.
$query=trim($query,','); //去掉最後的逗號
$query "SELECT * FROM taiwan where name in ($query)"
.
.

.
.
 while(
$row mysql_fetch_array($resultMYSQL_ASSOC)){ 
 
$id  $row["id"];
 
$name  $row["name"];
[
color=CC0000] echo $id.$name.$eye."<br>";[/color]
 }

發表日期:2007/6/12 20:56
應用擴展 工具箱


回覆: 查詢結果附上條件?
網站管理員
註冊日期:
2005/9/8 17:37
文章: 691
改成
$eye[$name[$i]] = $i + 1;

echo $id.$name.$eye[$name]."<br>";

你用$eye = array($i=>$name);
會變成每次進for都會reset一次$eye
而echo $eye沒指定索引 會echo出Array

發表日期:2007/6/13 8:38

編輯者: sam0228 於 2007年06月13日 08:58:08
編輯者: sam0228 於 2007年06月13日 08:59:49
編輯者: sam0228 於 2007年06月13日 09:01:29
應用擴展 工具箱


回覆: 查詢結果附上條件?
Just can't stay away
註冊日期:
2006/12/26 8:48
文章: 144
SQL way, 少量的對照
用 CASE 關鍵字。


SELECT id
name,
    CASE 
name
        WHEN 
'乙' THEN 1
        WHEN 
'丙' THEN 2
        WHEN 
'甲' THEN 3
    END 
AS input_seq
FROM mytable
;


其他例子:
例1: [url]http://blog.roodo.com/rocksaying/archives/1051724.html[/url]
例2:
[url]http://blog.roodo.com/rocksaying/archives/3459603.html[/url]

發表日期:2007/6/13 9:15
應用擴展 工具箱


回覆: 查詢結果附上條件?
Not too shy to talk
註冊日期:
2006/10/26 2:12
文章: 26
完美的答案...太完美了^^~~~~
終於讓我試出來了...感動ing

發表日期:2007/6/13 19:48
應用擴展 工具箱







[進階搜尋]