Я пытаюсь показать rowa и rowb (прямо под ним), если rowa истинно в инструкции WHERE. У меня есть ORDER BY Date, но это ничего не повлияет. Есть ли какие-либо быстрые способы отображения rowb, если строка rowa показана?SQL Microsoft Access Показать следующую следующую строку
Мой код ...
SELECT Roster.`Complete Name`, RS1018to1024.`Day of Week`, RS1018to1024.`Date`, RS1018to1024.`Time Type`, RS1018to1024.`Attribute`, RS1018to1024.`Value`, RS1018to1024.`Hourly value (in decimals)`
FROM Roster
INNER JOIN RS1018to1024 ON Roster.GIN = RS1018to1024.GIN
WHERE (RS1018to1024.`Hourly value (in decimals)` >15 AND RS1018to1024.`Time Type`='Wellsite/Job/Vessel' OR RS1018to1024.Attribute='Job ID' )
OR (RS1018to1024.`Time Type`='On Office-Base-Lab' AND RS1018to1024.Attribute='Regular Work Day' AND RS1018to1024.`Hourly value (in decimals)`>8)
ORDER BY RS1018to1024.`Complete Name`, RS1018to1024.`Date`, RS1018to1024.`Attribute` DESC;
Day of Week| Date | Time Type | Attribute | Value | Hourly value
Tues |20-Oct-2015| Wellsite | Reg Work Day | RGWD | 16.8
Tues |20-Oct-2015| Wellsite | Job ID | 2213 |
Friday |23-Oct-2015| Wellsite | Job ID | 2251 |
Wed |21-Oct-2015| Wellsite | Reg Work Day | RGWD | 24
Tues |21-Oct-2015| Wellsite | Job ID | 2317 |
Sunday |18-Oct-2015| On Office | Reg Work Day | RGWD | 12.2
CREATE TABLE mytable(
Day_of_Week VARCHAR(8) NOT NULL PRIMARY KEY
,Date VARCHAR(9) NOT NULL
,Time_Type VARCHAR(19) NOT NULL
,Attribute VARCHAR(16) NOT NULL
,Value VARCHAR(28) NOT NULL
,Hourly_value_in_decimals NUMERIC(5,2)
);
INSERT INTO mytable(Day_of_Week,Date,Time_Type,Attribute,Value,Hourly_value_in_decimals) VALUES ('Tuesday','20-Oct-15','Wellsite/Job/Vessel','Regular Work Day','RGWD - Regular Work Day (BR)',16.75);
INSERT INTO mytable(Day_of_Week,Date,Time_Type,Attribute,Value,Hourly_value_in_decimals) VALUES ('Tuesday','20-Oct-15','Wellsite/Job/Vessel','Job ID','2213840',NULL);
INSERT INTO mytable(Day_of_Week,Date,Time_Type,Attribute,Value,Hourly_value_in_decimals) VALUES ('Friday','23-Oct-15','Wellsite/Job/Vessel','Job ID','2212599',NULL);
INSERT INTO mytable(Day_of_Week,Date,Time_Type,Attribute,Value,Hourly_value_in_decimals) VALUES ('Friday','23-Oct-15','Wellsite/Job/Vessel','Regular Work Day','RGWD - Regular Work Day (BR)',23.87);
INSERT INTO mytable(Day_of_Week,Date,Time_Type,Attribute,Value,Hourly_value_in_decimals) VALUES ('Saturday','24-Oct-15','Wellsite/Job/Vessel','Job ID','2212599',NULL);
INSERT INTO mytable(Day_of_Week,Date,Time_Type,Attribute,Value,Hourly_value_in_decimals) VALUES ('Sunday','18-Oct-15','On Office-Base-Lab','Regular Work Day','RGWD - Regular Work Day (BR)',19.87);
INSERT INTO mytable(Day_of_Week,Date,Time_Type,Attribute,Value,Hourly_value_in_decimals) VALUES ('Monday','19-Oct-15','On Office-Base-Lab','Regular Work Day','RGWD - Regular Work Day (BR)',11.17);
То, что я хотел бы видеть это ...
Day of Week| Date | Time Type | Attribute | Value | Hourly value
Tues |20-Oct-2015| Wellsite | Reg Work Day | RGWD | 16.8
Tues |20-Oct-2015| Wellsite | Job ID | 2213 |
Wed |21-Oct-2015| Wellsite | Reg Work Day | RGWD | 24
Tues |21-Oct-2015| Wellsite | Job ID | 2317 |
Sunday |18-Oct-2015| On Office | Reg Work Day | RGWD | 12.2
CREATE TABLE mytable(
Day_of_Week VARCHAR(8) NOT NULL PRIMARY KEY
,Date VARCHAR(9) NOT NULL
,Time_Type VARCHAR(19) NOT NULL
,Attribute VARCHAR(16) NOT NULL
,Value VARCHAR(28) NOT NULL
,Hourly_value_in_decimals NUMERIC(5,2)
);
INSERT INTO mytable(Day_of_Week,Date,Time_Type,Attribute,Value,Hourly_value_in_decimals) VALUES ('Tuesday','20-Oct-15','Wellsite/Job/Vessel','Regular Work Day','RGWD - Regular Work Day (BR)',16.75);
INSERT INTO mytable(Day_of_Week,Date,Time_Type,Attribute,Value,Hourly_value_in_decimals) VALUES ('Tuesday','20-Oct-15','Wellsite/Job/Vessel','Job ID','2213840',NULL);
INSERT INTO mytable(Day_of_Week,Date,Time_Type,Attribute,Value,Hourly_value_in_decimals) VALUES ('Friday','23-Oct-15','Wellsite/Job/Vessel','Regular Work Day','RGWD - Regular Work Day (BR)',23.87);
INSERT INTO mytable(Day_of_Week,Date,Time_Type,Attribute,Value,Hourly_value_in_decimals) VALUES ('Saturday','24-Oct-15','Wellsite/Job/Vessel','Job ID','2212599',NULL);
INSERT INTO mytable(Day_of_Week,Date,Time_Type,Attribute,Value,Hourly_value_in_decimals) VALUES ('Sunday','18-Oct-15','On Office-Base-Lab','Regular Work Day','RGWD - Regular Work Day (BR)',19.87);
INSERT INTO mytable(Day_of_Week,Date,Time_Type,Attribute,Value,Hourly_value_in_decimals) VALUES ('Monday','19-Oct-15','On Office-Base-Lab','Regular Work Day','RGWD - Regular Work Day (BR)',11.17);
Таким образом, каждый тип времени, что говорит буровую площадку нужно две строки. Один для рабочего дня Reg и следующей строки, показывающей идентификатор задания. Мой код показывает все строки, у которых есть Идентификатор задания, из которого мне нужно избавиться, если у них нет рабочего дня Reg над ним. Кроме того, у меня есть строка типа On Office Time, которая прекрасна, и у меня нет никаких проблем.
'select row, row, row from boat' http://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/ – JamieD77
Можете ли вы пожалуйста, поделитесь структурой своей таблицы, некоторыми примерами данных и результатом, который вы пытаетесь получить? Благодаря! – Mureinik