select FooterTable.ItemCode,FooterTable.Quantity,FooterTable.UniPrice from MasterTable inner join FooterTable on MasterTable.Serial=FooterTable.Serial,MasterTable.BranchCode=FooterTable.BranchCode,MasterTable.Year=FooterTable.Year where MasterTable.Serial=10 AND MasterTable.Year=2019 AND MasterTable.BranchCode=1
function i need to modify it
public string GetSelectStatement(string JsonDataForSelect) { var root = (JObject)JsonConvert.DeserializeObject(JsonDataForSelect); var query = ""; var items = root.SelectToken("Details").Children().OfType<JProperty>().ToDictionary(p => p.Name, p => p.Value); foreach (var item in items) { if (item.Key == "table") { var tableName = item.Value; query = string.Format("select from table {0} inner join table{1} where", tableName); } else if (item.Key == "keys") { var key = item.Value.SelectToken("").OfType<JProperty>().ToDictionary(p => p.Name, p => p.Value); var count = 0; foreach (var id in key) { count++; if (count == key.Count()) { query += string.Format("{0} = {1}", id.Key, id.Value); } else { query += string.Format("{0} = {1} and ", id.Key, id.Value); } } } } return query; }
{ "Details":{ "table":[ "MasterTable", "FooterTable" ], "fields":{ "ItemCode":"string", "Quantity":"int", "Price":"decimal" }, "keys":{ "BranchCode":1, "Year":2019, "Serial":2 } } }