- Product: Alma
How to query on a specific byte value in the MARC LDR?
I want to create an analytics report based on LDR = 'd'.
I added a criteria on "Bibliographic Details"."BIB LDR MARC".
If I select "contains any" adding the character "d", then of course I get something.
But I need to search on byte 5 only.
Would this work if I convert this criteria to SQL?
If yes, what might that SQL string look like?
Analytics begins position counting from 1 rather than 0, so to identify LDR pos. 5, the substring needs to start from 6:
SUBSTRING("Bibliographic Details"."BIB LDR MARC" FROM 6) LIKE 'd%'
The other option for structuring this filter would be to select just the position 5 value from the LDR:
SUBSTRING("Bibliographic Details"."BIB LDR MARC" FROM 6 FOR 1)
At which point it would be possible to use = ‘d’ for the filter.
NOTE that in most cases BIBs with LDR = 'd' are also suppressed from discovery, so it is likely enough to search on titles whose Lifecycle status is "Deleted" or which are suppressed from discovery.
How to filter by contents of a specific position of a control field in Alma Analytics.pptx has specific examples of filtering by positions of the 008 and the LDR.
- Article last edited: 25-May-2021