當前位置:首頁 » 編程語言 » sql枚舉值查詢轉換
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql枚舉值查詢轉換

發布時間: 2022-07-18 02:30:34

❶ 請教怎麼直接將枚舉數據enum直接轉換成字元串

直接轉是不可能的,總得要個string數組或map之類的:
---------------------------------------------------------
#include <iostream>
#include <string>
#include <map>
using namespace std;

enum MPType
{
MPT_None,
MPT_Other,
MPT_Board,
MPT_Length
};

//方案一,直接用數組
string MPTypeString[MPT_Length] = {
"MPT_None",
"MPT_Other",
"MPT_Board"
};

//方案二,用map
class MPTypeConverter {
public:
MPTypeConverter() {
map.insert(make_pair(MPT_None, "MPT_None"));
map.insert(make_pair(MPT_Other, "MPT_Other"));
map.insert(make_pair(MPT_Board, "MPT_Board"));
}

string ToString(MPType key) {
MPTypeStringMap::iterator pos = map.find(key);
if (pos != map.end())
return pos->second;
return string("");
}

private:
typedef map<MPType, string> MPTypeStringMap;
MPTypeStringMap map;
};

int main()
{
MPTypeConverter converter;
cout << MPTypeString[MPT_Board] << endl;
cout << converter.ToString(MPT_Board) << endl;
return 0;
}

❷ 怎樣在sql查詢中實現反轉查詢結果那位大俠幫個忙,用什麼查詢方式和代碼實現個人QQ113126689,謝了!

selecta.款號,a.顏色,
(select數量fromtabnamebwherea.款號=b.款號anda.顏色=b.顏色and尺碼='S')S,
(select數量fromtabnamebwherea.款號=b.款號anda.顏色=b.顏色and尺碼='M')M
from
(
selectdistinct款號,顏色
fromtabname
)a

❸ SQL查詢枚舉欄位

eminportent在前台是個枚舉選項,這里想顯示漢字「VIP客戶」的話,有2種方法:

  1. 用case when或if等條件語句。

    casewhena.eminportent='...'then「VIP客戶」else「NOTVIP客戶」end
  2. 新建表做連接(推薦),即新建表,保存枚舉的所有對應值,用的時候join就可以了

❹ 關於資料庫中枚舉字典類型的查詢問題

是如許,有一個表,110個欄位,個中有70多個是代碼情勢,都有對應的代碼字典表,對於那些代碼欄位還涉及到字典代碼的增長,所以我沒有選擇combox。在form中錄入和萌芽的時刻,要讓各控制項顯示為轉換後的漢字,我應用了70多個dblookup控制項,感到是一個異常愚蠢的辦法,請問如何才是比較優化和常用的辦法?還有,在應用gird顯示數據的時刻,怎麼轉換代碼欄位呢?

❺ sql enum類型

enum是枚舉類型,sex性別欄位加約束條件,默認是『男』,插入數據時,sex欄位只可以是'男'或'女',另外,MySQL不支持check的,雖然語法上不會報錯是,分析建表語句的時候會被忽略.

❻ 查詢枚舉型數據的SQL語句怎麼寫

int i = Convert.ToInt32( Session["Number"].ToString()); //這里得到枚舉數量有多少 string temp = "shopid='"+Session["0"].ToString()+"'";//把第一個枚舉元素保存到temp中 for (int k = 1; k < i+1; k ++ ) { temp += "or shopid='" + Session["" + k + ""].ToString()+"'"; //把後續枚舉元素加到temp字元串後面 } //逐一讀取並顯示 string sql = "select * from tb_ShopCar where "+temp+"";//SQL語句,含變數 string table = "購買選中商品"; DataSet ds = MyClass.getDataSet(sql,table); this.GridView1.DataSource = ds; GridView1.DataKeyNames = new string[] { "shopid" }; this.GridView1.DataBind(); --------------------------------------------------------------------- 自己參考下我寫的代碼,這些代碼是我自己用的,並沒有全適合你。 可以自己改一下即可。最主要的還是前一半代碼。

❼ sql中怎麼用枚舉公式

枚舉聽說過,但你可以使用表格的行和表列做啊。許可權可以由協會做,枚舉表中的兩個字元可以放在許可權索引,它可以與此相應的許可權一般情況下相關聯,允許這樣做是為了讓用戶 - >角色 - >這條路權力這樣做更不是建立相關的表,或者在一個數組,等等。我希望啟發的形式提出幾點建議..

❽ 在資料庫中存枚舉值,用數字還是字元好

這個要看你的 枚舉, 是 僅僅一次只能選擇一個的? 還是一次可以選擇多個的.

例如你的
order_id order_status
1 SUCS(成功success)
2 PCES(處理process)

某行數據, 要麼就是 SUCS(成功success) , 要麼就是 PCES(處理process)
這種情況下, 用字元是比較合適的。

但是如果枚舉是可以選擇多個的, 例如:
id desc
1 無黨派
2 知識分子
4 少數民族
8 女性
16 ......

這種情況下, 如果一個人, 多個枚舉都滿足的情況下, 那麼這種情況下, 使用 數字 是比較適合的。
也就是
如果某個人,是 無黨派漢族女性研究生, 那麼枚舉值 = 1+2+8

❾ 查詢枚舉型數據的SQL語句怎麼寫麻煩告訴我

string temp = "shopid='"+Session["0"].ToString()+"'";//把第一個枚舉元素保存到temp中 for (int k = 1; k < i+1; k ++ ){temp += "or shopid='" + Session["" + k + ""].ToString()+"'"; //把後續枚舉元素加到temp字元串後面
} //逐一讀取並顯示
string sql = "select * from tb_ShopCar where "+temp+"";//SQL語句,含變數
string table = "購買選中商品";
DataSet ds = MyClass.getDataSet(sql,table);
this.GridView1.DataSource = ds;
this.GridView1.DataBind(); ---------------------------------------------------------------------自己參考下我寫的代碼,這些代碼是我自己用的,並沒有全適合你。可以自己改一下即可。最主要的還是前一半代碼。

❿ 用sql語句 把這個枚舉值所代表的值調用出來 怎麼調用!

說的不是很清楚,是不是這個枚舉值在數據表中有很多啊
1、打開數據表
2、移動到第一條記錄
3、遍歷所有記錄,找到與你枚舉值相同的記錄
如果枚舉值在你表中是唯一的
select * form 表名 where 欄位名=枚舉值