I've been building an API which was working absolutely fine until I tried to add an inner join
The SQL I'm passing returns as I'd expect when I run it in Beaver (am using Mac)
However, when I try and access it via my API end point, instead of the combined results, I get only results from the table I added in the join
I presume am doing something really stupid ...
From my controller:
result = dbtest.FromDatabase(
"SELECT A.FAMILY_ID
,A.START_TIME
,A.END_TIME
,A.WORKER_ID
,A.WEEK_NO
,A.ID
,A.SHIFT_NO
,A.DAY_OF_WEEK
,A.HOLIDAY_OR_TERM
,B.WORKER_NAME
FROM SHIFT_REQ_TBL A
INNER JOIN WORKER_TBL B ON A.WORKER_ID = B.WORKER_ID
WHERE A.FAMILY_ID = '" + FAMILY.FAMILY_ID + "'");
From my model
if (query.Contains("SHIFT_REQ_TBL"))
{
var tbl_type = new TimekeeperTables.SHIFT_REQ_TBL();
tbl_type.FAMILY_ID = Convert.ToInt32(reader["FAMILY_ID"]);
tbl_type.ID = Convert.ToInt32(reader["ID"]);
tbl_type.WEEK_NO = Convert.ToInt32(reader["WEEK_NO"]);
tbl_type.WORKER_ID = Convert.ToInt32(reader["WORKER_ID"]);
tbl_type.SHIFT_NO = reader["SHIFT_NO"].ToString();
tbl_type.START_TIME = reader["START_TIME"].ToString();
tbl_type.END_TIME = reader["END_TIME"].ToString();
tbl_type.DAY_OF_WEEK = reader["DAY_OF_WEEK"].ToString();
tbl_type.HOLIDAY_OR_TERM = reader["HOLIDAY_OR_TERM"].ToString();
tbl_type.WORKER_NAME = reader["WORKER_NAME"].ToString();
db_results.Add(tbl_type);
jsonDoc = JsonConvert.SerializeObject(db_results);
}
Results (from postman)
"[{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\ "WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNA SSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER _ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAM E\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"},{\\"WORKER_ID\\":1,\\"WORKER_NAME\\":\\"UNASSIGNED\\"}]"
I'm sorry, I was being stupid and figured it out
I was using a really dumb way of identifying the calling URL which already was checking for SHIFT_TBL in an earlier case
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.