我是MySQL的新手。我的數據庫是由客戶或webview數據購買的零售產品。例如:如何動態更改where子句中的列?
ID Records
R1 {iphone5s,levis,Dell,Dior,amazon}
R2 {levis,Dell,amazon,Starbucks,google glass}
R3 {iphone5s,Dell,Dior,google glass}
R4 {iphone5s,levis,Starbucks}
R5 {iphone5s,levis,Dell,google glass}
欲將該數據存儲到存儲database.I該數據爲:
ID iphone5s levis Dell Dior amazon Starbucks google glass
R1 1 1 1 1 1 0 0
R2 0 1 1 0 1 1 1
R3 1 0 1 1 0 0 1
R4 1 1 0 0 0 1 0
R5 1 1 1 0 0 0 1
create table retail(ID varchar(50),
iphone5s int,
levis int,
Dell int,
Dior int,
amazon int,
Starbucks int,
googleglass int);
insert into retail
values ('r1',1,1,1,1,1,0,0), ('r2',0,1,1,0,1,1,1);
insert into retail
values ('r3',1,0,1,1,0,0,1),('r4',1,1,0,0,0,1,0),('r5',1,1,1,0,0,0,1);
現在我想檢索的具有iphone5s ID和存儲的ID。類似,我希望收集具有每個列名的ID並存儲相應的ID。
用java我用下面的代碼收集列名:
ResultSet rs = stmt.executeQuery("SELECT * FROM retail");
ResultSetMetaData rsmd = rs.getMetaData();
int columnCount = rsmd.getColumnCount();
for (int i = 2; i < columnCount + 1; i++) {
String name = rsmd.getColumnName(i);
}
現在我想從零售where columnname=1
選擇ID。
列名應該每次都改變。
它被稱爲查詢生成器 – Drew
@Drew Query Builder的含義是什麼?在這種情況下它將如何提供幫助? – SrividhyaShama
您動態構建您的查詢。其中一個可能是colA ='Jim'的地方,下一個可能完全不同。 – Drew