Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Не выводит существующие значения
|
|||
|---|---|---|---|
|
#18+
Уважаемые форумчани. Пытаюсь сделать сводную таблицу, но у меня не выходит. Есть таблицы Первая HOLECOORD (holeid, projectcode, coordinateset, x,y,z) Вторая HOLEDETAILS (holeid, projectcode, name, value) Третья DRILLHOLEDIAMDETAILS (holeid, projectcode, name, value) Четвертая HOLESURVEY (holeid, projectcode, depth, azimuth, dip, azimuthGridName) Пятая DRILLINGDETAIL (drillingdate, shift, holeid, projectcode, name, value) Нужно из этих таблиц сделать сводную таблицу, какие скважины бурили на месторождении UZ к примеру 28 октября Скрипт отображает все, кроме азимута и угла (Azimuth, dip) Наверное, это потому что замеры делали много раз на одну скважину, поэтому, а мне нужен только первый, поэтому я использовала min, или потому что у этой таблицы нет дат никаких и при указании даты не работает... Когда из условия убираю дату, то работает (дублируется правда по сто раз, но работает) Помогите, пожалуйста P.s. просьба к формату даты не цеплятся, программа в которой я работаю понимает именно такие даты, изменения в формата в DATE ничего не дает и не меняет работу скрипта Вот такой у меня скрипт: select distinct h.holeID, hcd.X, hcd.Y,s.AZIMUTH, s.DIP, h.projectcode,dd.DRILLINGDATE, max(case when dr.name = 'DrillRigModel' then dr.Value end) as DrillRigModel, max(case when hd.name = 'Depth_Project' then hd.Value END) as Depth_Project, max(case when hd.name = 'Drill_Date_Start' then hd.Value END)as Drill_Date_Start from HOLEDETAILS hd left join DRILLHOLEDIAMDETAILS dr on dr.HOLEID=hd.HOLEID left join holelocation h on h.HOLEID=hd.HOLEID left join ( select distinct hs1.Holeid, hs1.Depth, hs1.AZIMUTH, hs1.DIP from HOLESURVEY hs1 inner join (select distinct hs2.Holeid, min(hs2.Depth)D from HOLESURVEY hs2 group by hs2.Holeid)hs on hs.Holeid=hs1.Holeid and hs.D=hs1.Depth group by hs.Holeid, hs1.Holeid, hs1.Depth, hs1.AZIMUTH, hs1.DIP)s on h.HOLEID=s.HOLEID left join DRILLINGDETAIL dd on dd.holeid=hd.HOLEID left join (select holeid, projectcode, round(x,2)X ,round(y,2)Y,round(z,2)Z from HOLECOORD where coordinateset = 'WGS84_Zone_43N_Plan')hcd on hcd.holeid=h.holeid and h.projectcode=h.projectcode where h.projectcode = 'uz' and DRILLINGDATE = '2ct-2017' GROUP BY h.holeID, h.projectcode, hcd.X, hcd.Y,s.AZIMUTH, s.DIP,dd.DRILLINGDATE ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2018, 09:15 |
|
||
|
Не выводит существующие значения
|
|||
|---|---|---|---|
|
#18+
katish444, не понятно, что именно тебе нужно... если нужно выбрать только первую строку в группе, то можно почитать тут ... если нужно что-то другое - объясни, что именно. и лучше не на примере неработающего запроса, а с тестовыми данными и желаемым результатом на них... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2018, 09:36 |
|
||
|
Не выводит существующие значения
|
|||
|---|---|---|---|
|
#18+
Добрый Э - Эх, пытаюсь получить таблицу как на скриншоте Сейчас опишу подробно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2018, 10:12 |
|
||
|
Не выводит существующие значения
|
|||
|---|---|---|---|
|
#18+
create table HOLECOORD (holeid varchar(255), projectcodevarchar(255), coordinatesetvarchar(255), x int,y int,z int) create table HOLEDETAILS (holeid varchar(255), projectcode varchar(255), name varchar(255), value varchar(255)) create table DRILLHOLEDIAMDETAILS (holeid varchar(255), projectcode varchar(255), name varchar(255), value varchar(255)) create table HOLESURVEY (holeid varchar(255), projectcode varchar(255), depth int, azimuth decimal(20,5), dip decimal(20,5), azimuthGridName varchar(255)) create table DRILLINGDETAIL (drillingdate varchar(255), shift varchar(255), holeid varchar(255), projectcode varchar(255), name varchar(255), value varchar(255)) insert into HOLECOORD (holeid, projectcode, coordinateset, x,y,z) values ('UZSE-17-001', 'UZ', 'WGS84_Zone_43N_Plan', 100,200,300) insert into HOLEDETAILS (holeid, projectcode, name, value) values ('UZSE-17-001', 'UZ', 'Drill_Date_Start', '26-oct-2017') insert into HOLEDETAILS (holeid, projectcode, name, value) values ('UZSE-17-001', 'UZ', 'Depth_Project', '100') insert into DRILLHOLEDIAMDETAILS (holeid, projectcode, name, value) values ('UZSE-17-001', 'UZ', 'DrillRigModel', 'LF90') insert into HOLESURVEY (holeid, projectcode, depth, azimuth, dip, azimuthGridName) values ('UZSE-17-001', 'UZ',0,20,90,'AZ') insert into HOLESURVEY (holeid, projectcode, depth, azimuth, dip, azimuthGridName) values ('UZSE-17-001', 'UZ',20,40,60,'AZ') insert into DRILLINGDETAIL (drillingdate, shift, holeid, projectcode, name, value) values ('27-oct-2017','day','UZSE-17-001', 'UZ',DrillDepth','20') Вот таблица на которой должен сработать мой скрипт ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2018, 10:33 |
|
||
|
Не выводит существующие значения
|
|||
|---|---|---|---|
|
#18+
Блин, не могу эту тему удалить и случайно продублировала. Прошу прощения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2018, 10:37 |
|
||
|
Не выводит существующие значения
|
|||
|---|---|---|---|
|
#18+
katish444Блин, не могу эту тему удалить и случайно продублировала. Прошу прощенияредактирование сообщений и их удаление - не предусмотрено движком форума. Тут реализована древняя народная мудрость - "что написано пером, то не вырубить топором" ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2018, 10:39 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39586912&tid=1690476]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
68ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
26ms |
get tp. blocked users: |
1ms |
| others: | 244ms |
| total: | 383ms |

| 0 / 0 |
