D2 sql+markdown, run 1: the query session

← back to the run

25 queries4 failed7 rounds
The opening prompt
## The data

You can't see the data, but you can query it. It is in DuckDB, in the tables below. Write DuckDB SQL.

To run queries, reply with one or more fenced blocks (```sql), and nothing else is needed:
each is run and its results sent back to you. You have up to 8 rounds of queries.
When you have what you need, reply with the final answers and no queries.

All columns are text (VARCHAR); dates are ISO strings.

- `entities` (540 rows): entity_id, name, lei, country, entity_type, parent_id, source_system
- `instruments` (122 rows): instrument_id, description, issuer_id, guarantor_id, seniority, currency, maturity
- `rating_actions` (914 rows): action_id, date, rated_id, rating_type, ccy_basis, action, rating, outlook, watch, comment

### ontology.md (the vocabulary the data uses)

# Credit ratings: a teaching ontology

Entities, instruments, rating actions and the codes the data uses, each with a definition that states what it means and how to read it. Invented for an experiment; not a model of any real rating agency.

## Classes

### Entity

A legal entity: a company, bank, finance subsidiary or sovereign. An entity is identified by its LEI (LEI), not by its name or record ID. The data holds records from more than one source system (source system), so the same entity can appear as several records with different IDs and differently spelled names: two records with the same LEI are the same entity, and every fact recorded against either record is a fact about that one entity.

### Instrument

A debt instrument, such as a bond or note, issued by an entity (issuer). An instrument's rating is not the issuer's rating: it can sit above or below it depending on seniority (seniority) and on any guarantee (guarantor).

### Rating action

Something a rating agency did to a rating on a date (date): assigned, affirmed, upgraded, downgraded, placed on Watch or withdrawn it. Each action applies to one rated thing (rated thing), one rating type (rating type) and, for issuer ratings, one currency basis (currency basis). A rating holds from its action date until the next action on the same thing, type and basis: so the rating on a date D is the one set by the latest action on or before D, and the current rating is the latest action overall. rating always holds the rating as it stands after the action, including when it did not change.

## Properties

### name (CSV column `name`)

The name as the source system spells it. Names are not identifiers: the same entity can be spelled differently in different systems.

### LEI (CSV column `lei`)

Legal Entity Identifier: the identifier that says which legal entity a record describes. Same LEI, same entity. Sovereigns have none.

### country (CSV column `country`)

ISO-style code of the country where the entity is domiciled. Where an entity's records disagree, see source system for which holds. It decides which Country Ceiling, if any, applies to the entity's foreign-currency ratings. VD is the Republic of Valdoria and CV the Republic of Corvenia (both invented).

### entity type (CSV column `entity_type`)

What kind of entity it is: a concept of the scheme Entity types.

### parent (CSV column `parent_id`)

The entity that owns and controls this one. A parent link names a record, but points at the entity that record describes, so the chain continues from any of that entity's records. Following parents up to an entity with no parent gives the ultimate parent; a group is an ultimate parent and every entity whose chain of parents ends at it.

### source system (CSV column `source_system`)

The internal system the record comes from (RATINGS, RESEARCH, QA). Each system keeps its own records of the same entities; see Entity. Where records of the same entity disagree, which one holds depends on the field. RATINGS is the system of record for names and parent links. Domicile is the exception: the RESEARCH team checks each entity's registered office against its filings, so where records disagree on country, the RESEARCH record holds. QA records are test data, created to check the systems: they describe no real entity, so a QA record, and every action recorded against it, must be ignored.

### description (CSV column `description`)

The instrument's name: issuer, coupon and maturity year.

### issuer (CSV column `issuer_id`)

The entity that issued the instrument and owes the payments. Not necessarily the entity whose credit risk the investor takes: see guarantor.

### guarantor (CSV column `guarantor_id`)

An entity that guarantees the instrument's payments if the issuer does not pay. A guaranteed instrument carries the guarantor's credit risk, so it is rated in line with the guarantor's issuer rating, not the issuer's.

### seniority (CSV column `seniority`)

Where the instrument ranks in repayment if the issuer fails: a concept of the scheme Seniorities.

### currency (CSV column `currency`)

The currency the instrument pays in, as an ISO 4217 code, or one of two local codes: XVD, the Valdorian dollar, the domestic currency of VD; and CVK, the Corvenian krone, the domestic currency of CV. Debt in a currency other than the domestic one of the issuer's country is exposed to that country's transfer and convertibility risk: see Country Ceiling (CC). Debt in the domestic currency is local-currency debt and is not capped by the ceiling.

### maturity (CSV column `maturity`)

The date the instrument is due to be repaid.

### date (CSV column `date`)

The date the action took effect.

### rated thing (CSV column `rated_id`)

What the action is about: an entity (for issuer ratings and Country Ceilings) or an instrument (for instrument ratings).

### rating type (CSV column `rating_type`)

Which kind of rating the action concerns: a concept of the scheme Rating types. Different types are different ratings and are never compared or combined with each other.

### currency basis (CSV column `ccy_basis`)

For issuer ratings, whether the rating covers foreign-currency (FC) or local-currency (LC) obligations: a concept of the scheme Currency bases. An entity can have both, with different values.

### action (CSV column `action`)

What was done: a concept of the scheme Action types. Only upgrades and downgrades change a rating.

### rating (CSV column `rating`)

The rating after the action, on the scale of its rating type. Long-term scale, strongest to weakest: AAA, AA+, AA, AA-, A+, A, A-, BBB+, BBB, BBB-, BB+, BB, BB-, B+, B, B-, CCC, CC, C, RD, D. Investment grade means BBB- or higher; BB+ and below is speculative grade (high yield). RD (restricted default) means the issuer has defaulted on some material obligations, for instance by completing a distressed debt exchange, without being wound up: RD is a default. D means a general default. Short-term scale, strongest to weakest: F1+, F1, F2, F3, B, C, RD, D. WD means the rating was withdrawn (see Withdrawn (WD)): it is not a point on either scale.

### outlook (CSV column `outlook`)

The likely direction of a long-term rating over the next one to two years: a concept of the scheme Outlooks. An outlook is not a rating: revising it does not change the rating.

### rating watch (CSV column `watch`)

Set when the rating is on Rating Watch: a concept of the scheme Rating Watches. A Watch is not a rating change.

### comment (CSV column `comment`)

The analyst's note on the action, such as the reason for a withdrawal.

## Codes

The codes as they appear in the data, grouped by list.

### Rating types

- **LTIDR**, Long-term Issuer Default Rating: The issuer's own creditworthiness: how likely it is to default on its obligations, on the long-term scale. This is what people usually mean by an entity's rating. The foreign-currency (FC) one is the headline rating; there may also be a local-currency (LC) one.
- **STIDR**, Short-term Issuer Default Rating: The issuer's ability to meet obligations falling due within about a year, on the short-term scale (F1+ to D). Not comparable with long-term ratings.
- **INST**, Instrument rating: The rating of one specific instrument. It starts from the issuer's long-term rating and is notched for the instrument's seniority and expected recovery: subordinated debt is usually rated below the issuer, and guaranteed debt is rated on the guarantor. An instrument rating is never the rating of the issuer.
- **CC**, Country Ceiling: Not a rating of anyone. A cap, set for a country, on the foreign-currency ratings of entities domiciled there and of their foreign-currency debt. It reflects transfer and convertibility risk: the risk that the government stops money being converted or sent abroad, so even a sound company could not pay foreign-currency debt. Foreign-currency ratings of entities in the country are generally no higher than the ceiling; local-currency ratings are not capped. A Country Ceiling is not the sovereign's own issuer rating.
- **CO**, Credit opinion: A private, point-in-time view of an entity's credit, given to one client. It is not a published rating and not an issuer rating: never count it as a rating, and never report its value as the entity's rating.

### Currency bases

- **FC**, Foreign currency: Covers obligations in foreign currency, so it is subject to the Country Ceiling.
- **LC**, Local currency: Covers obligations in the currency of the entity's own country; not subject to the Country Ceiling.

### Action types

- **AS**, Assigned: A first rating is given.
- **AF**, Affirmed: The rating is reviewed and kept the same. The outlook may be revised in the same action; that does not make it an upgrade or a downgrade.
- **UG**, Upgraded: The rating is raised.
- **DG**, Downgraded: The rating is lowered. The only action that counts as a downgrade.
- **RW**, Placed on Rating Watch: The rating is flagged as likely to change soon, usually within about six months, in the direction rating watch gives. The rating itself is unchanged: not a downgrade.
- **WD**, Withdrawn: The agency stops maintaining the rating, often for commercial reasons (the issuer no longer pays for it, or the debt is repaid). After a withdrawal the entity has no rating of that type. A withdrawal is not a credit event: it says nothing about default, and is not a downgrade.
- **EX**, Expected rating: A rating signalled before an instrument's final documents are signed. It is not yet a rating: the instrument stays unrated until an Assigned (AS) action confirms it.

### Outlooks

- **STA**, Stable: No direction expected.
- **POS**, Positive: The rating may go up over one to two years.
- **NEG**, Negative: The rating may go down over one to two years. Not a downgrade.

### Rating Watches

- **RWN**, Rating Watch Negative: A downgrade is likely in the near term. Not a downgrade yet.

### Seniorities

- **SU**, Senior unsecured: Ranks with the issuer's ordinary debts; usually rated at the level of the issuer's long-term rating.
- **SUB**, Subordinated: Repaid only after senior debt, so investors recover less in a default; usually rated one or more notches below the issuer's long-term rating.

### Entity types

- **CORP**, Corporate: A non-financial company.
- **BANK**, Bank: A bank.
- **FINSUB**, Finance subsidiary: A subsidiary that exists to raise debt for its parent group. It usually has no issuer rating of its own; its debt is guaranteed by the parent, so investors take the parent's credit risk.
- **SOV**, Sovereign: A national government. A sovereign record can carry a Country Ceiling, issuer ratings, or both: they are different things, and the ceiling is not the sovereign's rating.


## Questions

Answer each question below from the data above. Start each answer on a new line with its
number in bold, like **Q1.**, give the direct answer first, then at most two sentences of
reasoning that cite the records (IDs) you relied on.

Then end with one JSON block (```json) holding the structured answer to each question listed
here, with exactly these fields, shaped like {"Q1": {"field": value}, ...}. Name entities by their record ID: the entity_id in the CSV files, or the part of the IRI after lad: in the RDF (E01, not Kestrel Energy plc).

- Q1: rating (a rating, or "none")
- Q2: downgraded ("yes", "no" or "depends")
- Q3: investment_grade ("yes", "no" or "depends"), rating (a rating, or "none")
- Q4: outlook (an outlook)
- Q5: risk_of (a record ID), rating (a rating, or "none")
- Q7: issuers (a list of record IDs)
- Q8: entities (a list of record IDs)
- Q9: count (a number)
- Q10: investment_grade ("yes", "no" or "depends")
- Q11: rating (a rating, or "none")
- Q12: rating (a rating, or "none")
- Q13: count (a number)
- Q14: rating (a rating, or "none")
- Q15: rating (a rating, or "none")
- Q16: changed ("yes", "no" or "depends")
- Q17: downgraded ("yes", "no" or "depends")
- Q18: issuers (a list of record IDs)
- Q19: issuers (a list of record IDs)
- Q20: in_default ("yes", "no" or "depends")
- Q21: entities (a list of record IDs)
- Q22: entities (a list of record IDs)
- Q23: rating (a rating, or "none")
- Q24: investment_grade ("yes", "no" or "depends")
- Q25: count (a number)
- Q26: rating (a rating, or "none")
- Q27: rating (a rating, or "none")
- Q28: rating (a rating, or "none")
- Q29: rating (a rating, or "none")
- Q30: entities (a list of record IDs)
- Q31: any ("yes", "no" or "depends")
- Q32: parent (a record ID)
- Q33: risk_of (a record ID), rating (a rating, or "none")
- Q34: same_group ("yes", "no" or "depends")
- Q35: count (a number)
- Q36: count (a number)
- Q37: count (a number)
- Q38: same ("yes", "no" or "depends")
- Q39: rating (a rating, or "none")
- Q40: count (a number)
- Q41: rating (a rating, or "none")
- Q42: country (a country code)
- Q43: count (a number)
- Q44: local_currency ("yes", "no" or "depends")
- Q45: above_ceiling ("yes", "no" or "depends")
- Q46: issuer_rating ("yes", "no" or "depends")
- Q47: rating (a rating, or "none")
- Q48: count (a number)
- Q49: parent (a record ID)
- Q50: count (a number)
- Q51: count (a number)
- Q52: count (a number)
- Q53: same_group ("yes", "no" or "depends")
- Q54: entities (a list of record IDs)
- Q55: count (a number)
- Q56: rating (a rating, or "none")
- Q57: entity (a record ID)
- Q58: entities (a list of record IDs)
- Q59: count (a number)
- Q60: risk_of (a record ID), same_group ("yes", "no" or "depends")
- Q61: count (a number)

Q1. What was Kestrel Energy's rating on 1 January 2025?
Q2. Has Kestrel Energy been downgraded in 2026?
Q3. Is Kestrel Energy's 2031 note investment grade?
Q4. What is Northwind Holdings' current outlook?
Q5. Whose credit risk does a holder of the Northwind Finance 2030 notes take, and how is it rated?
Q6. Why is Valdoria Telecom's foreign-currency rating lower than its local-currency rating?
Q7. Which issuers were downgraded in 2026?
Q8. Which entities were in default on 1 October 2026?
Q9. As of 1 October 2026, how many distinct issuers hold an issuer rating?
Q10. Is Valdoria Telecom investment grade?
Q11. What was Marlow Utilities' rating on 1 June 2025?
Q12. What was Marlow Utilities' rating on 1 January 2024?
Q13. How many times has Marlow Utilities been downgraded?
Q14. What was Halden Foods' rating on 1 January 2024?
Q15. What was Halden Bank's rating on 1 January 2026?
Q16. Has Marlow Utilities' rating changed since 1 January 2025?
Q17. Was Orrin Bank downgraded in 2026?
Q18. Which issuers were on Rating Watch Negative on 1 October 2026?
Q19. Which issuers had a Negative outlook on 1 October 2026?
Q20. Is Pellam Retail in default?
Q21. Which entities had an issuer rating at some point but no longer had one on 1 October 2026?
Q22. Which entities have ever been in default?
Q23. What is Kestrel Energy's short-term rating?
Q24. Is Kestrel Energy's issuer rating investment grade?
Q25. How many instruments held an investment-grade rating on 1 October 2026?
Q26. What is Corvenia Power's local-currency rating?
Q27. How is Corvenia Power's 2032 note rated?
Q28. What is the Republic of Corvenia's foreign-currency issuer rating?
Q29. What is the Republic of Valdoria's issuer rating?
Q30. Which entities had a foreign-currency issuer rating exactly at their country's ceiling on 1 October 2026?
Q31. Did any company have a foreign-currency issuer rating above its country's ceiling on 1 October 2026?
Q32. Who is Halden Leasing's ultimate parent?
Q33. Whose credit risk does a holder of the Halden Leasing 2028 notes take, and how is it rated?
Q34. Is Halden Foods part of the same group as Halden Bank?
Q35. How many entities are in the Halden group, the parent included?
Q36. How many entities are in the Northwind group, the parent included?
Q37. How many distinct legal entities does the data describe?
Q38. Are Orrin Bank AG and Orrin Bancorp Inc the same entity?
Q39. What is Northwind Holdings' current rating?
Q40. How many distinct issuers domiciled in GB held an issuer rating on 1 October 2026?
Q41. What is Brindle Capital's current rating?
Q42. In which country is Halden Bank domiciled?
Q43. How many distinct entities are domiciled in Luxembourg (LU)?
Q44. Is Valdoria Telecom's 2027 note a local-currency obligation?
Q45. Is Valdoria Telecom's 2027 note rated above what Valdoria's Country Ceiling allows?
Q46. Does Halden Leasing have an issuer rating?
Q47. How is Corvenia Power's 2034 note rated?
Q48. How many instruments held a rating on 1 October 2026?
Q49. Who is Cerid Rosor Holdings SA's ultimate parent?
Q50. How many levels of ownership separate Cerid Rosor Holdings SA from its ultimate parent?
Q51. How many entities are in the Cerid Group plc group, the parent included?
Q52. How many entities are in the Rotam Group Inc group, the parent included?
Q53. Are Belir Mining SA and Rotam Group Inc in the same group?
Q54. Which members of the Wonod Group SA group are domiciled in Valdoria (VD)?
Q55. If Valdoria (VD) came under stress, how many entities with an issuer rating in force have an entity domiciled in VD somewhere above them in their chain of parents?
Q56. What is the lowest current foreign-currency issuer rating held by any member of the Vesol Group BV group?
Q57. Which is the nearest entity that Cerid Guven Energy SA and Cerid Telecom SA both have in their chains of parents?
Q58. Which entities guarantee a note issued by an entity outside their own group?
Q59. How many entities in the Cerid Group plc group sit exactly three levels below the top?
Q60. Whose credit risk does a holder of the Cross-group 4.75% notes due 2031 take, and is that entity in the same group as the issuer?
Q61. How many members of the Cerid Group plc group, the top included, hold a foreign-currency issuer rating below investment grade?
The model
I'll start by exploring the data.

```sql
SELECT * FROM entities ORDER BY entity_id;
```

```sql
SELECT * FROM instruments ORDER BY instrument_id;
```
Query results
Query 1:

| entity_id | name | lei | country | entity_type | parent_id | source_system |
|---|---|---|---|---|---|---|
| CV | Republic of Corvenia |  | CV | SOV |  | RATINGS |
| E01 | Kestrel Energy plc | 7245002OOPBG04092E43 | GB | CORP |  | RATINGS |
| E02 | Northwind Holdings plc | 213800PHEIYNJMHTDV74 | GB | CORP |  | RATINGS |
| E03 | NORTHWIND HLDGS | 213800PHEIYNJMHTDV74 | GB | CORP |  | RESEARCH |
| E04 | Northwind Finance BV | 213800LA5RYJLGXV2T85 | NL | FINSUB | E02 | RATINGS |
| E05 | Valdoria Telecom SA | 391200LESH03LMOY2U61 | VD | CORP |  | RATINGS |
| E06 | Orrin Bank AG | 549300AMVE3VRVG7HK43 | DE | BANK |  | RATINGS |
| E07 | Pellam Retail Ltd | 969500B6IUACELPI2291 | GB | CORP |  | RATINGS |
| E08 | Saxby Shipping SA | 969500KOTZ1JFIZSG796 | GR | CORP |  | RATINGS |
| E09 | Halden Group plc | 815600ASM9EHDG931T89 | GB | CORP |  | RATINGS |
| E10 | Halden Bank AG | 391200QYPVFF2O9K2039 | DE | BANK | E09 | RATINGS |
| E1001 | Tunod Steel SA | 3912003R00FP6CNV6210 | FR | CORP |  | RATINGS |
| E1002 | TUNOD STEEL SA | 3912003R00FP6CNV6210 | FR | CORP |  | RESEARCH |
| E1003 | Rilol Telecom plc | 3912009W4J483WB8PZ97 | GB | BANK |  | RATINGS |
| E1004 | Munem Retail SA | 969500IBYK0X2ZT52780 | ES | CORP |  | RATINGS |
| E1005 | Setan Airlines Inc | 815600JRN7AOE36KFR35 | US | CORP |  | RATINGS |
| E1006 | Soson Airlines Inc | 213800WSVEOAQ5HD4C43 | US | CORP | E1005 | RATINGS |
| E1007 | Golod Property plc | 815600N2UAHQREHHWF76 | GB | BANK |  | RATINGS |
| E1008 | Sotil Retail plc | 213800RPNJ2OSQ387M40 | GB | CORP |  | RATINGS |
| E1009 | Malam Chemicals Inc | 3912006EIY6TU9NVSC86 | US | CORP |  | RATINGS |
| E1010 | Buvir Industries Inc | 3912004R2GZJL49URX69 | US | CORP |  | RATINGS |
| E1011 | Falom Media Inc | 549300XX6U9N4Y7KPH74 | US | BANK |  | RATINGS |
| E1012 | Posad Industries SA | 9695002JIQI5QYDN0G98 | FR | CORP |  | RATINGS |
| E1013 | Pisol Pharma BV | 969500U072SAPPW32N81 | NL | BANK | E1004 | RATINGS |
| E1014 | Toral Utilities BV | 391200J700D8T2H18W16 | NL | CORP |  | RATINGS |
| E1015 | Civen Steel Inc | 815600JSNIJ4UFCBF662 | US | CORP |  | RATINGS |
| E1016 | Ponar Telecom SA | 5493008DQ96XI37KZG24 | ES | BANK |  | RATINGS |
| E1017 | Nisid Steel SA | 391200K600X7LWZTTM85 | FR | BANK |  | RATINGS |
| E1018 | Tosem Mining Inc | 549300SEMGL6OXLWHQ59 | US | CORP |  | RATINGS |
| E1019 | Losol Mining SA | 391200GSFO0F68KKUC67 | CV | CORP |  | RATINGS |
| E1020 | Finel Media AG | 549300FCSHHELSCZX562 | DE | CORP |  | RATINGS |
| E1021 | Niner Pharma plc | 391200KLG6G4KVIMIU52 | GB | CORP |  | RATINGS |
| E1022 | NINER PHARMA | 391200KLG6G4KVIMIU52 | GB | CORP |  | RESEARCH |
| E1023 | Heled Water plc | 3912006FHXTH5V6WNK07 | GB | CORP |  | RATINGS |
| E1024 | Susin Shipping BV | 3912005J04HB7X0GTN24 | NL | CORP |  | RATINGS |
| E1025 | Tulol Shipping SA | 2138007MIV2OS05PET94 | ES | BANK |  | RATINGS |
| E1026 | Vunam Water BV | 969500C8XYHXZBFMUO41 | NL | CORP |  | RATINGS |
| E1027 | Tesad Media Inc | 969500T86HNH5S920X18 | US | CORP |  | RATINGS |
| E1028 | Mutir Retail SA | 213800TJ32NARU0BI982 | VD | CORP |  | RATINGS |
| E1029 | Leson Telecom Inc | 8156008DPX4I9DNKWN26 | US | BANK |  | RATINGS |
| E1030 | LESON TELECOM INC | 8156008DPX4I9DNKWN26 | US | BANK |  | RESEARCH |
| E1031 | Kuvir Logistics SA | 969500GRHP48SQNEWH44 | ES | CORP |  | RATINGS |
| E1032 | Helom Chemicals BV | 2138006H9XCYN2P1K228 | NL | BANK |  | RATINGS |
| E1033 | Kunid Pharma SA | 213800Q84PS4FTJJB947 | ES | CORP | E1004 | RATINGS |
| E1034 | Tanad Capital SpA | 815600KLV84WAQGPSX27 | IT | CORP |  | RATINGS |
| E1035 | Kavod Utilities AG | 724500YHN51API4SE179 | DE | CORP |  | RATINGS |
| E1036 | Lilor Retail AG | 9695000N72OQ0Q07IW61 | DE | CORP |  | RATINGS |
| E1037 | Natil Retail SA | 391200OBAXI8590VQN12 | FR | CORP |  | RATINGS |
| E1038 | Lanon Telecom BV | 549300EZ4HXP0L5RAZ01 | NL | CORP |  | RATINGS |
| E1039 | Pulor Airlines SA | 969500HA9D5I7F73PW83 | CV | BANK |  | RATINGS |
| E1040 | Dorid Mining AG | 549300SPMD9MEMFWMR12 | DE | CORP |  | RATINGS |
| E1041 | Hiral Steel SA | 549300JU1O5MP1HSKQ01 | ES | CORP |  | RATINGS |
| E1042 | Rerod Steel BV | 391200LC6V921W096L49 | NL | CORP |  | RATINGS |
| E1043 | Vitom Property plc | 5493007IVTPIWJZLFF29 | GB | CORP |  | RATINGS |
| E1044 | Hesid Telecom Inc | 3912003Y7VZHUGN50755 | US | BANK |  | RATINGS |
| E1045 | Nesid Logistics Inc | 96950029VB162U3K1976 | US | BANK |  | RATINGS |
| E1046 | Ditin Shipping Inc | 549300ZM08IADSAK3L87 | US | BANK | E1026 | RATINGS |
| E1047 | Vaved Pharma plc | 391200WGA8OE30KZUD08 | GB | CORP | E1020 | RATINGS |
| E1048 | Lised Pharma AG | 9695000T21G05UQMGF10 | DE | CORP |  | RATINGS |
| E1049 | Paser Utilities plc | 391200R2EH7FELZFOV27 | GB | CORP |  | RATINGS |
(480 more rows not shown)

Query 2:

| instrument_id | description | issuer_id | guarantor_id | seniority | currency | maturity |
|---|---|---|---|---|---|---|
| I01 | Kestrel Energy 4.50% notes due 2030 | E01 |  | SU | GBP | 2030-03-15 |
| I02 | Kestrel Energy 6.25% notes due 2031 | E01 |  | SUB | GBP | 2031-09-30 |
| I03 | Northwind Finance 3.75% notes due 2030 | E04 | E02 | SU | EUR | 2030-05-01 |
| I04 | Valdoria Telecom 5.00% notes due 2029 | E05 |  | SU | USD | 2029-11-20 |
| I05 | Halden Leasing 2.90% notes due 2028 | E11 | E10 | SU | EUR | 2028-06-30 |
| I06 | Corvenia Power 7.10% notes due 2032 | E15 |  | SUB | USD | 2032-02-15 |
| I07 | Valdoria Telecom 4.25% notes due 2027 | E05 |  | SU | XVD | 2027-08-31 |
| I08 | Corvenia Power 6.00% notes due 2034 | E15 |  | SU | USD | 2034-09-01 |
| I1001 | Soson Airlines 5.50% notes due 2031 | E1006 |  | SUB | USD | 2035-06-30 |
| I1002 | Golod Property 8.75% notes due 2031 | E1007 |  | SU | USD | 2033-06-30 |
| I1003 | Sotil Retail 3.00% notes due 2031 | E1008 |  | SU | GBP | 2034-06-30 |
| I1004 | Malam Chemicals 2.25% notes due 2035 | E1009 |  | SU | USD | 2028-06-30 |
| I1005 | Posad Industries 4.00% notes due 2033 | E1012 |  | SU | EUR | 2031-06-30 |
| I1006 | Pisol Pharma 4.75% notes due 2030 | E1013 |  | SUB | USD | 2030-06-30 |
| I1007 | Toral Utilities 7.75% notes due 2028 | E1014 |  | SU | EUR | 2033-06-30 |
| I1008 | Ponar Telecom 4.75% notes due 2035 | E1016 |  | SU | EUR | 2033-06-30 |
| I1009 | Tosem Mining 2.75% notes due 2031 | E1018 |  | SUB | USD | 2036-06-30 |
| I1010 | Finel Media 6.50% notes due 2035 | E1020 |  | SU | EUR | 2036-06-30 |
| I1011 | Niner Pharma 3.25% notes due 2029 | E1021 |  | SU | USD | 2035-06-30 |
| I1012 | Heled Water 6.25% notes due 2030 | E1023 |  | SU | GBP | 2031-06-30 |
| I1013 | Kuvir Logistics 2.00% notes due 2027 | E1031 |  | SU | EUR | 2027-06-30 |
| I1014 | Kavod Utilities 2.50% notes due 2032 | E1035 |  | SU | USD | 2036-06-30 |
| I1015 | Lanon Telecom 4.75% notes due 2033 | E1038 |  | SUB | EUR | 2032-06-30 |
| I1016 | Hiral Steel 6.00% notes due 2035 | E1041 |  | SU | USD | 2034-06-30 |
| I1017 | Lised Pharma 4.50% notes due 2036 | E1048 |  | SU | EUR | 2029-06-30 |
| I1018 | Paser Utilities 3.75% notes due 2027 | E1049 |  | SUB | GBP | 2034-06-30 |
| I1019 | Sunar Holdings 8.50% notes due 2036 | E1050 |  | SUB | USD | 2034-06-30 |
| I1020 | Witad Steel 5.00% notes due 2033 | E1052 |  | SU | EUR | 2027-06-30 |
| I1021 | Duver Shipping 8.50% notes due 2032 | E1056 |  | SU | EUR | 2030-06-30 |
| I1022 | Levem Foods 6.50% notes due 2035 | E1067 |  | SUB | EUR | 2030-06-30 |
| I1023 | Mored Utilities 4.25% notes due 2032 | E1071 |  | SUB | USD | 2033-06-30 |
| I1024 | Ganed Holdings 5.75% notes due 2035 | E1077 |  | SU | EUR | 2032-06-30 |
| I1025 | Menir Shipping 7.50% notes due 2028 | E1078 |  | SUB | EUR | 2034-06-30 |
| I1026 | Nevar Property 6.75% notes due 2036 | E1079 |  | SU | GBP | 2028-06-30 |
| I1027 | Gilen Capital 2.00% notes due 2031 | E1082 |  | SUB | USD | 2034-06-30 |
| I1028 | Givim Mining 5.75% notes due 2036 | E1085 |  | SU | EUR | 2034-06-30 |
| I1029 | Gorar Steel 7.25% notes due 2033 | E1086 |  | SUB | USD | 2035-06-30 |
| I1030 | Vitid Holdings 5.75% notes due 2032 | E1087 |  | SU | EUR | 2034-06-30 |
| I1031 | Koved Holdings 2.50% notes due 2032 | E1088 |  | SUB | EUR | 2033-06-30 |
| I1032 | Getel Utilities 7.25% notes due 2033 | E1090 |  | SU | USD | 2032-06-30 |
| I1033 | Vavam Pharma 8.75% notes due 2032 | E1103 |  | SUB | USD | 2032-06-30 |
| I1034 | Kisil Logistics 8.50% notes due 2031 | E1108 |  | SU | EUR | 2033-06-30 |
| I1035 | Verod Logistics 3.00% notes due 2035 | E1114 |  | SU | GBP | 2029-06-30 |
| I1036 | Piren Foods 2.50% notes due 2030 | E1115 |  | SU | USD | 2033-06-30 |
| I1037 | Reter Shipping 8.00% notes due 2028 | E1118 |  | SU | EUR | 2027-06-30 |
| I1038 | Conan Capital 4.75% notes due 2033 | E1131 |  | SU | EUR | 2031-06-30 |
| I1039 | Larid Steel 8.50% notes due 2028 | E1141 |  | SU | GBP | 2033-06-30 |
| I1040 | Woner Media 5.75% notes due 2027 | E1143 |  | SUB | EUR | 2027-06-30 |
| I1041 | Kanim Pharma 3.25% notes due 2033 | E1145 |  | SUB | EUR | 2036-06-30 |
| I1042 | Daren Mining 5.75% notes due 2030 | E1147 |  | SU | EUR | 2035-06-30 |
| I1043 | Honel Shipping 4.50% notes due 2028 | E1149 |  | SUB | EUR | 2029-06-30 |
| I1044 | Wavad Foods 6.75% notes due 2035 | E1155 |  | SU | USD | 2036-06-30 |
| I1045 | Ruven Airlines 5.75% notes due 2032 | E1156 |  | SUB | EUR | 2036-06-30 |
| I1046 | Diled Steel 8.75% notes due 2027 | E1160 |  | SU | EUR | 2029-06-30 |
| I1047 | Wunam Telecom 5.25% notes due 2032 | E1162 |  | SU | EUR | 2029-06-30 |
| I1048 | Wenar Water 8.25% notes due 2028 | E1163 |  | SUB | EUR | 2028-06-30 |
| I1049 | Ranim Shipping 8.00% notes due 2028 | E1166 |  | SUB | USD | 2036-06-30 |
| I1050 | Fivan Holdings 2.25% notes due 2035 | E1168 |  | SU | EUR | 2027-06-30 |
| I1051 | Molar Shipping 3.25% notes due 2031 | E1188 |  | SU | EUR | 2028-06-30 |
| I1052 | Divid Property 4.25% notes due 2033 | E1189 |  | SUB | GBP | 2032-06-30 |
(62 more rows not shown)

Run more queries, or give the final answers.
The model
```sql
SELECT * FROM entities WHERE entity_id NOT LIKE 'E1%' OR entity_id IN ('E1') ORDER BY entity_id;
```

```sql
SELECT * FROM instruments WHERE instrument_id NOT LIKE 'I1%' OR description LIKE '%Cross%' OR guarantor_id IS NOT NULL ORDER BY instrument_id;
```

```sql
SELECT * FROM rating_actions WHERE rated_id IN ('E01','E02','E03','E04','E05','E06','E07','E08','E09','E10','E11','E12','E13','E14','E15','CV','VD','I01','I02','I03','I04','I05','I06','I07','I08') ORDER BY rated_id, rating_type, ccy_basis, date;
```
Query results
Query 1:

| entity_id | name | lei | country | entity_type | parent_id | source_system |
|---|---|---|---|---|---|---|
| CV | Republic of Corvenia |  | CV | SOV |  | RATINGS |
| E01 | Kestrel Energy plc | 7245002OOPBG04092E43 | GB | CORP |  | RATINGS |
| E02 | Northwind Holdings plc | 213800PHEIYNJMHTDV74 | GB | CORP |  | RATINGS |
| E03 | NORTHWIND HLDGS | 213800PHEIYNJMHTDV74 | GB | CORP |  | RESEARCH |
| E04 | Northwind Finance BV | 213800LA5RYJLGXV2T85 | NL | FINSUB | E02 | RATINGS |
| E05 | Valdoria Telecom SA | 391200LESH03LMOY2U61 | VD | CORP |  | RATINGS |
| E06 | Orrin Bank AG | 549300AMVE3VRVG7HK43 | DE | BANK |  | RATINGS |
| E07 | Pellam Retail Ltd | 969500B6IUACELPI2291 | GB | CORP |  | RATINGS |
| E08 | Saxby Shipping SA | 969500KOTZ1JFIZSG796 | GR | CORP |  | RATINGS |
| E09 | Halden Group plc | 815600ASM9EHDG931T89 | GB | CORP |  | RATINGS |
| E5001 | Cerid Group plc | 815600F48PANJQE75352 | GB | CORP |  | RATINGS |
| E5002 | Cerid Energy plc | 3912006ACANJUP8PLJ39 | GB | CORP | E5001 | RATINGS |
| E5003 | Cerid Media BV | 724500EXQA91TPK6WL60 | NL | CORP | E5001 | RATINGS |
| E5004 | Cerid Utilities plc | 969500SFWGRHVUTANY40 | GB | CORP | E5001 | RATINGS |
| E5005 | Cerid Chemicals SA | 391200B1GR4AGTV5WY99 | VD | CORP | E5002 | RATINGS |
| E5006 | Cerid Foods plc | 969500HZQBDFIIHLYK06 | GB | BANK | E5002 | RATINGS |
| E5007 | Cerid Holdings BV | 391200Q98UGZZQTV1C88 | NL | CORP | E5003 | RATINGS |
| E5008 | Cerid Airlines BV | 815600M8RE9386DDQB31 | NL | CORP | E5003 | RATINGS |
| E5009 | Cerid Leror Logistics plc | 96950033222B9BRCGP58 | GB | CORP | E5004 | RATINGS |
| E5010 | Cerid Gator Steel Inc | 724500E2OQMMMZVTBS53 | US | CORP | E5004 | RATINGS |
| E5011 | Cerid Guven Energy SA | 391200IX7WB68Q29NJ46 | VD | CORP | E5167 | RATINGS |
| E5012 | Cerid Gevin Pharma SA | 549300TPHB19IJU6VV67 | VD | CORP | E5005 | RATINGS |
| E5013 | Cerid Telecom SA | 724500EU84AMOZS7U244 | ES | BANK | E5006 | RATINGS |
| E5014 | Cerid Gusom Pharma SpA | 724500YWGS7BR1AKHD13 | IT | CORP | E5006 | RATINGS |
| E5015 | Cerid Logistics BV | 969500C1TQV008QIYL28 | NL | CORP | E5007 | RATINGS |
| E5016 | Cerid Rovem Industries BV | 549300WMHA09HQ7NGF72 | NL | CORP | E5007 | RATINGS |
| E5017 | Cerid Steel BV | 213800BAYNUVR2EE0Y41 | NL | CORP | E5008 | RATINGS |
| E5018 | Cerid Mining BV | 815600DDEIUOIMDS3N14 | NL | CORP | E5008 | RATINGS |
| E5019 | Cerid Buvom Mining plc | 2138002W9KTVILKQ8Q89 | GB | CORP | E5009 | RATINGS |
| E5020 | Cerid Tivim Retail SA | 9695003VHLA8O9WU7N54 | FR | BANK | E5009 | RATINGS |
| E5021 | Cerid Retail Inc | 724500S8Q4HUNT229Y84 | US | CORP | E5010 | RATINGS |
| E5022 | Cerid Industries Inc | 213800S7QJ9EVK96PK05 | US | CORP | E5010 | RATINGS |
| E5023 | Cerid Dilal Utilities SA | 549300MXQ7UU7852PG70 | VD | CORP | E5011 | RATINGS |
| E5024 | Cerid Fatal Shipping SA | 39120041ZCI02VDN2I18 | VD | CORP | E5012 | RATINGS |
| E5025 | Cerid Fater Media SA | 213800AXPZD5MSP2GW32 | ES | CORP | E5013 | RATINGS |
| E5026 | Cerid Hosad Retail Inc | 724500GF9ADSAA20FI77 | US | CORP | E5014 | RATINGS |
| E5027 | Cerid Hutem Water plc | 391200TO1KK187R1JQ78 | GB | CORP | E5015 | RATINGS |
| E5028 | Cerid Galon Chemicals BV | 724500EVQNRETR9CVD02 | NL | BANK | E5016 | RATINGS |
| E5029 | Cerid Walol Water BV | 21380057HMIY2LIM5A29 | NL | BANK | E5017 | RATINGS |
| E5030 | Cerid Tivor Holdings BV | 549300M13MMEINCT8W03 | NL | CORP | E5018 | RATINGS |
| E5031 | Cerid Velin Water plc | 815600Q07VLOKJE53L06 | GB | CORP | E5019 | RATINGS |
| E5032 | Cerid Meron Media SA | 213800CIZLWWL071KP85 | FR | CORP | E5020 | RATINGS |
| E5033 | Cerid Pitam Energy Inc | 969500799KP9QCVM7739 | US | CORP | E5021 | RATINGS |
| E5034 | Cerid Shipping BV | 7245008XDA202762F829 | NL | CORP | E5022 | RATINGS |
| E5035 | Cerid Water SA | 724500637K0GA6PFC081 | VD | BANK | E5023 | RATINGS |
| E5036 | Cerid Calin Energy SpA | 549300RJ7KMPDJVQY167 | IT | CORP | E5024 | RATINGS |
| E5037 | Cerid Holom Water SA | 2138003NRPV4IDSP9314 | ES | CORP | E5025 | RATINGS |
| E5038 | Cerid Holen Chemicals BV | 969500HETRKT6OQMNS48 | NL | CORP | E5026 | RATINGS |
| E5039 | Cerid Property SA | 549300DBENKHP53C1C31 | ES | CORP | E5027 | RATINGS |
| E5040 | Cerid Lovan Energy BV | 9695007VBLZNWG66LZ43 | NL | CORP | E5028 | RATINGS |
| E5041 | Cerid Dolem Mining AG | 391200FXD4CH3FVZ4165 | DE | BANK | E5029 | RATINGS |
| E5042 | Cerid Feral Property BV | 724500N6QZUJJJ1BJI79 | NL | BANK | E5030 | RATINGS |
| E5043 | Cerid Retil Chemicals plc | 724500TQEHDQ1U12GG60 | GB | CORP | E5031 | RATINGS |
| E5044 | Cerid Masim Retail plc | 969500Q2MORWVR40BH37 | GB | CORP | E5032 | RATINGS |
| E5045 | Cerid Curel Water SA | 7245006QVOPQQK3JUP45 | CV | CORP | E5033 | RATINGS |
| E5046 | Cerid Gevom Media BV | 5493004EWDCN8OTFZZ22 | NL | CORP | E5034 | RATINGS |
| E5047 | Cerid Rosor Holdings SA | 8156004CDHFBVRR3LT54 | VD | BANK | E5035 | RATINGS |
| E5048 | Cerid Pharma plc | 969500Z6AXSJ33YYZX35 | GB | CORP | E5036 | RATINGS |
| E5049 | Cerid Ritir Foods plc | 969500W280QA6A7WLO22 | GB | CORP | E5037 | RATINGS |
| E5050 | Cerid Futir Utilities BV | 213800KKF07D3TEWYS82 | NL | BANK | E5038 | RATINGS |
(121 more rows not shown)

Query 2:

| instrument_id | description | issuer_id | guarantor_id | seniority | currency | maturity |
|---|---|---|---|---|---|---|
| I01 | Kestrel Energy 4.50% notes due 2030 | E01 |  | SU | GBP | 2030-03-15 |
| I02 | Kestrel Energy 6.25% notes due 2031 | E01 |  | SUB | GBP | 2031-09-30 |
| I03 | Northwind Finance 3.75% notes due 2030 | E04 | E02 | SU | EUR | 2030-05-01 |
| I04 | Valdoria Telecom 5.00% notes due 2029 | E05 |  | SU | USD | 2029-11-20 |
| I05 | Halden Leasing 2.90% notes due 2028 | E11 | E10 | SU | EUR | 2028-06-30 |
| I06 | Corvenia Power 7.10% notes due 2032 | E15 |  | SUB | USD | 2032-02-15 |
| I07 | Valdoria Telecom 4.25% notes due 2027 | E05 |  | SU | XVD | 2027-08-31 |
| I08 | Corvenia Power 6.00% notes due 2034 | E15 |  | SU | USD | 2034-09-01 |
| I1093 | Poval Chemicals Finance 2.50% notes due 2034 | E1325 | E1084 | SU | EUR | 2027-03-31 |
| I1094 | Witad Steel Finance 6.50% notes due 2027 | E1326 | E1052 | SU | EUR | 2033-03-31 |
| I1095 | Nuner Holdings Finance 4.50% notes due 2032 | E1327 | E1119 | SU | EUR | 2030-03-31 |
| I1096 | Palad Mining Finance 6.50% notes due 2030 | E1328 | E1244 | SU | EUR | 2028-03-31 |
| I1097 | Ganen Shipping Finance 5.50% notes due 2030 | E1329 | E1069 | SU | EUR | 2029-03-31 |
| I1098 | Niner Pharma Finance 3.50% notes due 2030 | E1330 | E1021 | SU | EUR | 2032-03-31 |
| I1099 | Tulol Shipping Finance 3.50% notes due 2034 | E1331 | E1025 | SU | EUR | 2032-03-31 |
| I1100 | Sanin Mining Finance 2.50% notes due 2032 | E1332 | E1068 | SU | EUR | 2028-03-31 |
| I1101 | Gilen Capital Finance 3.50% notes due 2031 | E1333 | E1082 | SU | EUR | 2034-03-31 |
| I1102 | Votim Industries Finance 3.50% notes due 2027 | E1334 | E1260 | SU | EUR | 2031-03-31 |
| I1103 | Belor Telecom Finance 2.50% notes due 2027 | E1335 | E1234 | SU | EUR | 2030-03-31 |
| I1104 | Navor Holdings Finance 2.50% notes due 2029 | E1336 | E1176 | SU | EUR | 2033-03-31 |
| I1105 | Lanon Telecom Finance 5.50% notes due 2028 | E1337 | E1038 | SU | EUR | 2034-03-31 |
| I1106 | Hivor Industries Finance 6.50% notes due 2027 | E1338 | E1073 | SU | EUR | 2033-03-31 |
| I1107 | Wivin Airlines Finance 2.50% notes due 2031 | E1339 | E1241 | SU | EUR | 2030-03-31 |
| I5001 | Cerid Funding 4.25% notes due 2033 | E5005 | E5001 | SU | EUR | 2030-12-31 |
| I5002 | Belir Funding 5.25% notes due 2035 | E5062 | E5059 | SU | EUR | 2029-12-31 |
| I5003 | Rotam Funding 3.25% notes due 2032 | E5090 | E5086 | SU | EUR | 2033-12-31 |
| I5004 | Wonod Funding 4.25% notes due 2032 | E5108 | E5105 | SU | EUR | 2032-12-31 |
| I5005 | Vesol Funding 7.25% notes due 2033 | E5135 | E5132 | SU | EUR | 2030-12-31 |
| I5006 | Geren Funding 7.25% notes due 2030 | E5149 | E5145 | SU | EUR | 2032-12-31 |
| I5007 | Cross-group 4.75% notes due 2031 | E5133 | E5145 | SU | USD | 2031-06-30 |

Query 3:

| action_id | date | rated_id | rating_type | ccy_basis | action | rating | outlook | watch | comment |
|---|---|---|---|---|---|---|---|---|---|
| A37 | 2024-01-01 | CV | CC |  | AS | A |  |  |  |
| A38 | 2024-01-01 | CV | LTIDR | FC | AS | BBB+ | STA |  |  |
| A39 | 2024-01-01 | CV | LTIDR | LC | AS | A- | STA |  |  |
| A01 | 2024-03-12 | E01 | LTIDR | FC | AS | A- | STA |  |  |
| A02 | 2025-06-20 | E01 | LTIDR | FC | DG | BBB | STA |  | weaker cash flow after asset sale |
| A03 | 2026-02-10 | E01 | LTIDR | FC | AF | BBB | NEG |  |  |
| A04 | 2026-02-10 | E01 | STIDR | FC | AF | F2 |  |  |  |
| A08 | 2023-11-01 | E02 | LTIDR | FC | AS | A | STA |  |  |
| A09 | 2025-09-15 | E03 | LTIDR | FC | AF | A | POS |  |  |
| A14 | 2025-04-01 | E05 | LTIDR | FC | AS | BB | STA |  |  |
| A13 | 2025-04-01 | E05 | LTIDR | LC | AS | BBB- | STA |  |  |
| A16 | 2024-05-01 | E06 | LTIDR | FC | AS | A- | STA |  |  |
| A17 | 2026-09-03 | E06 | LTIDR | FC | RW | A- |  | RWN |  |
| A18 | 2024-01-10 | E07 | LTIDR | FC | AS | BB | STA |  |  |
| A19 | 2026-05-12 | E07 | LTIDR | FC | WD | WD |  |  | commercial reasons |
| A20 | 2024-06-01 | E08 | LTIDR | FC | AS | B | STA |  |  |
| A21 | 2026-01-20 | E08 | LTIDR | FC | DG | CCC |  |  |  |
| A22 | 2026-07-08 | E08 | LTIDR | FC | DG | RD |  |  | distressed debt exchange completed |
| A24 | 2023-05-01 | E09 | LTIDR | FC | AS | A | STA |  |  |
| A25 | 2026-03-01 | E09 | LTIDR | FC | AF | A | NEG |  |  |
| A26 | 2023-05-01 | E10 | LTIDR | FC | AS | A- | STA |  | support from parent |
| A27 | 2026-04-15 | E10 | LTIDR | FC | DG | BBB+ | STA |  |  |
| A46 | 2025-02-01 | E11 | CO |  | AS | BBB |  |  |  |
| A30 | 2024-02-01 | E12 | LTIDR | FC | AS | BB- | STA |  |  |
| A31 | 2025-08-01 | E12 | LTIDR | FC | UG | BB | STA |  |  |
| A32 | 2024-07-01 | E13 | LTIDR | FC | AS | BBB | STA |  |  |
| A34 | 2023-01-15 | E14 | LTIDR | FC | AS | A- | STA |  |  |
| A36 | 2024-09-30 | E14 | LTIDR | FC | DG | BBB+ | STA |  |  |
| A35 | 2025-11-20 | E14 | LTIDR | FC | RW | BBB+ |  | RWN |  |
| A33 | 2026-05-01 | E14 | LTIDR | FC | AF | BBB+ | STA |  |  |
| A41 | 2024-03-01 | E15 | LTIDR | FC | AS | A | STA |  |  |
| A40 | 2024-03-01 | E15 | LTIDR | LC | AS | A+ | STA |  |  |
| A05 | 2024-03-12 | I01 | INST |  | AS | A- |  |  |  |
| A06 | 2025-06-20 | I01 | INST |  | DG | BBB |  |  |  |
| A23 | 2024-03-12 | I02 | INST |  | AS | BBB |  |  |  |
| A07 | 2025-06-20 | I02 | INST |  | DG | BB+ |  |  |  |
| A10 | 2023-11-01 | I03 | INST |  | AS | A |  |  |  |
| A11 | 2025-09-15 | I03 | INST |  | AF | A |  |  |  |
| A15 | 2025-04-01 | I04 | INST |  | AS | BB |  |  |  |
| A28 | 2023-06-01 | I05 | INST |  | AS | A- |  |  |  |
| A29 | 2026-04-15 | I05 | INST |  | DG | BBB+ |  |  |  |
| A42 | 2024-03-01 | I06 | INST |  | AS | A- |  |  |  |
| A45 | 2025-04-01 | I07 | INST |  | AS | BBB- |  |  |  |
| A47 | 2026-09-01 | I08 | INST |  | EX | A |  |  |  |
| A12 | 2025-04-01 | VD | CC |  | AS | BB |  |  |  |

Run more queries, or give the final answers.
The model
```sql
SELECT * FROM entities WHERE entity_id IN ('E11','E12','E13','E14','E15','E16','E17','E18','E19','E20','VD') OR name ILIKE '%marlow%' OR name ILIKE '%orrin%' OR name ILIKE '%brindle%' OR name ILIKE '%halden%' ORDER BY entity_id;
```

```sql
SELECT * FROM entities WHERE entity_id >= 'E5051' AND entity_id LIKE 'E5%' ORDER BY entity_id;
```

```sql
SELECT * FROM rating_actions WHERE rated_id IN (SELECT entity_id FROM entities WHERE name ILIKE '%marlow%' OR name ILIKE '%orrin%' OR name ILIKE '%brindle%' OR name ILIKE '%halden%') OR rated_id IN ('E16','E17','E18','E19','E20','E21','E22') ORDER BY rated_id, rating_type, ccy_basis, date;
```
Query results
Query 1:

| entity_id | name | lei | country | entity_type | parent_id | source_system |
|---|---|---|---|---|---|---|
| E06 | Orrin Bank AG | 549300AMVE3VRVG7HK43 | DE | BANK |  | RATINGS |
| E09 | Halden Group plc | 815600ASM9EHDG931T89 | GB | CORP |  | RATINGS |
| E10 | Halden Bank AG | 391200QYPVFF2O9K2039 | DE | BANK | E09 | RATINGS |
| E11 | Halden Leasing SA | 549300XBZH4ULO9MQV55 | FR | FINSUB | E10 | RATINGS |
| E12 | Halden Foods Ltd | 213800IJDL4OJ4DG5T19 | GB | CORP |  | RATINGS |
| E13 | Orrin Bancorp Inc | 815600O8X8K2F154N214 | US | BANK |  | RATINGS |
| E14 | Marlow Utilities plc | 3912005AH2C1I9YF8106 | GB | CORP |  | RATINGS |
| E15 | Corvenia Power SA | 213800PBQVHVBBH6GV02 | CV | CORP |  | RATINGS |
| E16 | Brindle Capital Ltd | 5493003Z3PXXR7KNFM81 | GB | CORP |  | QA |
| E17 | HALDEN BANK | 391200QYPVFF2O9K2039 | LU | BANK |  | RESEARCH |
| VD | Republic of Valdoria |  | VD | SOV |  | RATINGS |

Query 2:

| entity_id | name | lei | country | entity_type | parent_id | source_system |
|---|---|---|---|---|---|---|
| E5051 | Cerid Butad Capital SA | 969500P4S8FH9839YS39 | FR | CORP | E5039 | RATINGS |
| E5052 | Cerid Viron Property SA | 391200Z0R0NKUJT0LS48 | FR | CORP | E5040 | RATINGS |
| E5053 | Cerid Setom Media AG | 549300GMLMV9DA645M00 | DE | CORP | E5041 | RATINGS |
| E5054 | Cerid Linin Media BV | 549300UVWD2URAQCNQ18 | NL | BANK | E5042 | RATINGS |
| E5055 | Cerid Gosim Media SA | 391200627RBIC2DTG305 | CV | CORP | E5043 | RATINGS |
| E5056 | Cerid Capital plc | 391200Q0XXMZJQSOR362 | GB | CORP | E5044 | RATINGS |
| E5057 | Cerid Manid Airlines Inc | 5493008DY4URIBMCWM93 | US | CORP | E5045 | RATINGS |
| E5058 | Cerid Cirad Industries BV | 391200XLOZO7S6T1FI61 | NL | BANK | E5046 | RATINGS |
| E5059 | Belir Group AG | 969500YPO4CFVEL1XX12 | DE | CORP |  | RATINGS |
| E5060 | Belir Retail AG | 549300PQXT9OXKZVXP03 | DE | CORP | E5059 | RATINGS |
| E5061 | Belir Steel Inc | 5493004QWM1AN9Q59M90 | US | BANK | E5059 | RATINGS |
| E5062 | Belir Mining SA | 54930011OTFCAUKB0A28 | FR | CORP | E5060 | RATINGS |
| E5063 | Belir Harem Property AG | 391200DIHCC3BA4VZZ12 | DE | CORP | E5060 | RATINGS |
| E5064 | Belir Holdings plc | 724500Q0JKSMWBXVBU93 | GB | CORP | E5061 | RATINGS |
| E5065 | Belir Nelad Property AG | 549300L03V06VLA93J12 | DE | CORP | E5061 | RATINGS |
| E5066 | Belir Shipping SA | 2138006F3FLNO4C1FU85 | FR | CORP | E5062 | RATINGS |
| E5067 | Belir Capital AG | 724500PEM92TFIBH3E89 | DE | CORP | E5063 | RATINGS |
| E5068 | Belir Kator Energy plc | 969500LH6R0LMYUZA394 | GB | CORP | E5064 | RATINGS |
| E5069 | Belir Water SA | 391200PZ4I0VQJK2W457 | FR | CORP | E5065 | RATINGS |
| E5070 | Belir Rusin Media SA | 8156004IQIH39FK9VH78 | FR | CORP | E5066 | RATINGS |
| E5071 | Belir Chemicals SA | 724500EPR0DH4ZXK1N07 | FR | CORP | E5066 | RATINGS |
| E5072 | Belir Katin Telecom AG | 815600R2EBVJ16RD3A20 | DE | CORP | E5067 | RATINGS |
| E5073 | Belir Puvir Mining plc | 549300Z4E2ZBV3ZWA751 | GB | CORP | E5067 | RATINGS |
| E5074 | Belir Industries plc | 549300KXQ2S560AVV453 | GB | CORP | E5068 | RATINGS |
| E5075 | Belir Gitid Industries plc | 815600DW5IX6LC8W8V29 | GB | CORP | E5068 | RATINGS |
| E5076 | Belir Property SA | 96950092K7EM4MPGLP04 | FR | CORP | E5069 | RATINGS |
| E5077 | Belir Media SA | 213800PX54IYKA21SV31 | FR | CORP | E5069 | RATINGS |
| E5078 | Belir Vasin Water plc | 969500OGDTR8B14SH139 | GB | BANK | E5070 | RATINGS |
| E5079 | Belir Sitom Logistics SA | 213800N76YAEEVTGC136 | FR | CORP | E5071 | RATINGS |
| E5080 | Belir Foods AG | 815600W19TGJNKXFFO22 | DE | CORP | E5072 | RATINGS |
| E5081 | Belir Vusad Telecom SA | 549300C58DC34KK7FK00 | VD | CORP | E5073 | RATINGS |
| E5082 | Belir Bovid Telecom plc | 815600N0YPG44MRFH213 | GB | BANK | E5074 | RATINGS |
| E5083 | Belir Airlines plc | 815600VWRV7PTZ2G2598 | GB | CORP | E5075 | RATINGS |
| E5084 | Belir Luton Media SA | 815600NALYO1JPB0Y303 | FR | BANK | E5076 | RATINGS |
| E5085 | Belir Rutel Water SA | 213800K6R3NB1ZT7Y709 | CV | CORP | E5077 | RATINGS |
| E5086 | Rotam Group Inc | 213800PJV1XFQEKJ1L86 | US | CORP |  | RATINGS |
| E5087 | Rotam Mining Inc | 724500OT1LFBVAVBRI55 | US | CORP | E5086 | RATINGS |
| E5088 | Rotam Industries Inc | 72450088A4BIGJ0A1N08 | US | CORP | E5086 | RATINGS |
| E5089 | Rotam Airlines Inc | 7245008N6U91AB1U1398 | US | CORP | E5086 | RATINGS |
| E5090 | Rotam Logistics Inc | 724500J7FCE6HMEBB653 | US | CORP | E5087 | RATINGS |
| E5091 | Rotam Water SA | 7245007V26QZ8EY8MZ45 | VD | CORP | E5088 | RATINGS |
| E5092 | Rotam Hison Holdings Inc | 391200GBH7B6XVDLYP36 | US | CORP | E5089 | RATINGS |
| E5093 | Rotam Telecom Inc | 391200SIBITK6V9AYU16 | US | CORP | E5090 | RATINGS |
| E5094 | Rotam Holdings Inc | 72450096SJSRDS8ZI255 | US | CORP | E5090 | RATINGS |
| E5095 | Rotam Energy BV | 815600HA1HK1TIMKR785 | NL | BANK | E5091 | RATINGS |
| E5096 | Rotam Lulel Mining SA | 549300CUU7XMKSLTTB66 | ES | BANK | E5091 | RATINGS |
| E5097 | Rotam Chemicals Inc | 3912008BZ54JQ8UNFG51 | US | BANK | E5092 | RATINGS |
| E5098 | Rotam Pharma SA | 815600LW5B06S1CQW672 | CV | CORP | E5092 | RATINGS |
| E5099 | Rotam Fived Water Inc | 815600UU6JEHIIMLC927 | US | CORP | E5093 | RATINGS |
| E5100 | Rotam Property Inc | 724500GA08KIJSPLUI93 | US | BANK | E5094 | RATINGS |
| E5101 | Rotam Foods BV | 724500VSL9A06KR45I76 | NL | CORP | E5095 | RATINGS |
| E5102 | Rotam Utilities SA | 96950092DKV427KADB93 | ES | CORP | E5096 | RATINGS |
| E5103 | Rotam Goson Energy Inc | 724500LIPSS64F2BVY06 | US | CORP | E5097 | RATINGS |
| E5104 | Rotam Media SA | 724500JZITB0L2T1PH98 | CV | CORP | E5098 | RATINGS |
| E5105 | Wonod Group SA | 7245003GC3MAPLM74H56 | FR | CORP |  | RATINGS |
| E5106 | Wonod Steel BV | 969500W1342GHBTOGH81 | NL | CORP | E5105 | RATINGS |
| E5107 | Wonod Retail BV | 21380092E5EHPJ4TFV08 | NL | CORP | E5105 | RATINGS |
| E5108 | Wonod Shipping BV | 969500GFVXV2N0QJJ192 | NL | CORP | E5106 | RATINGS |
| E5109 | Wonod Holdings SA | 815600AHGVOU0SPTG094 | FR | CORP | E5106 | RATINGS |
| E5110 | Wonod Capital BV | 9695006QN6F7HCKCUF24 | NL | CORP | E5106 | RATINGS |
(60 more rows not shown)

Query 3:

| action_id | date | rated_id | rating_type | ccy_basis | action | rating | outlook | watch | comment |
|---|---|---|---|---|---|---|---|---|---|
| A16 | 2024-05-01 | E06 | LTIDR | FC | AS | A- | STA |  |  |
| A17 | 2026-09-03 | E06 | LTIDR | FC | RW | A- |  | RWN |  |
| A24 | 2023-05-01 | E09 | LTIDR | FC | AS | A | STA |  |  |
| A25 | 2026-03-01 | E09 | LTIDR | FC | AF | A | NEG |  |  |
| A26 | 2023-05-01 | E10 | LTIDR | FC | AS | A- | STA |  | support from parent |
| A27 | 2026-04-15 | E10 | LTIDR | FC | DG | BBB+ | STA |  |  |
| A46 | 2025-02-01 | E11 | CO |  | AS | BBB |  |  |  |
| A30 | 2024-02-01 | E12 | LTIDR | FC | AS | BB- | STA |  |  |
| A31 | 2025-08-01 | E12 | LTIDR | FC | UG | BB | STA |  |  |
| A32 | 2024-07-01 | E13 | LTIDR | FC | AS | BBB | STA |  |  |
| A34 | 2023-01-15 | E14 | LTIDR | FC | AS | A- | STA |  |  |
| A36 | 2024-09-30 | E14 | LTIDR | FC | DG | BBB+ | STA |  |  |
| A35 | 2025-11-20 | E14 | LTIDR | FC | RW | BBB+ |  | RWN |  |
| A33 | 2026-05-01 | E14 | LTIDR | FC | AF | BBB+ | STA |  |  |
| A43 | 2024-04-01 | E16 | LTIDR | FC | AS | BBB- | STA |  |  |
| A44 | 2026-06-01 | E16 | LTIDR | FC | DG | BB+ | STA |  |  |

Run more queries, or give the final answers.
The model
```sql
SELECT * FROM entities WHERE entity_id > 'E5110' AND entity_id LIKE 'E5%' ORDER BY entity_id;
```

```sql
SELECT source_system, count(*), count(distinct lei), sum((lei IS NULL)::int) FROM entities GROUP BY ALL;
```

```sql
SELECT count(distinct lei) FILTER (WHERE source_system<>'QA') n_lei, count(*) FILTER (WHERE lei IS NULL AND source_system<>'QA') n_nolei FROM entities;
```

```sql
SELECT rating_type, ccy_basis, action, count(*) FROM rating_actions GROUP BY ALL ORDER BY 1,2,3;
```

```sql
SELECT * FROM entities WHERE country='LU' OR entity_id IN (SELECT entity_id FROM entities WHERE lei IN (SELECT lei FROM entities GROUP BY lei HAVING count(*)>1 AND count(distinct country)>1 )) ORDER BY lei, entity_id;
```
Query results
Query 1:

| entity_id | name | lei | country | entity_type | parent_id | source_system |
|---|---|---|---|---|---|---|
| E5111 | Wonod Airlines SA | 8156007JSKV2AQVXO923 | CV | CORP | E5107 | RATINGS |
| E5112 | Wonod Telecom BV | 213800RG52C0JR6AJF65 | NL | CORP | E5107 | RATINGS |
| E5113 | Wonod Wetid Foods BV | 391200F077WCSDTMTP77 | NL | CORP | E5107 | RATINGS |
| E5114 | Wonod Pharma Inc | 7245005SRMAA70J2TD65 | US | CORP | E5108 | RATINGS |
| E5115 | Wonod Water SA | 969500R5VDDM7EGRNE68 | FR | CORP | E5109 | RATINGS |
| E5116 | Wonod Media SA | 724500I4E8HLVDTIKT27 | CV | CORP | E5110 | RATINGS |
| E5117 | Wonod Mining SA | 815600S1Y8PRQ014AM59 | CV | CORP | E5111 | RATINGS |
| E5118 | Wonod Wevan Logistics BV | 815600KWD2K0VOPED085 | NL | CORP | E5112 | RATINGS |
| E5119 | Wonod Povem Telecom SA | 391200SY8W07WDP69G34 | FR | CORP | E5113 | RATINGS |
| E5120 | Wonod Property Inc | 81560040PS8E00LR6M78 | US | BANK | E5114 | RATINGS |
| E5121 | Wonod Energy SA | 549300UCYMMVP94NQX38 | FR | CORP | E5115 | RATINGS |
| E5122 | Wonod Chemicals SA | 81560047EAYEL7V8VI20 | FR | CORP | E5116 | RATINGS |
| E5123 | Wonod Utilities SA | 549300RUQWG4VIV5KY48 | ES | BANK | E5117 | RATINGS |
| E5124 | Wonod Kinon Holdings SA | 213800CPQNCG46SCSV94 | VD | CORP | E5118 | RATINGS |
| E5125 | Wonod Koval Capital SA | 549300I028ICLWFHUK31 | FR | CORP | E5119 | RATINGS |
| E5126 | Wonod Tetim Holdings Inc | 391200TDW0CDEAOZ0B63 | US | CORP | E5120 | RATINGS |
| E5127 | Wonod Pavad Media SA | 8156005BP06D67UX1Z45 | CV | CORP | E5121 | RATINGS |
| E5128 | Wonod Horal Steel SA | 72450003RPAMWMQANJ28 | FR | BANK | E5122 | RATINGS |
| E5129 | Wonod Logistics SA | 391200UAVGFU3T7SBV10 | ES | BANK | E5123 | RATINGS |
| E5130 | Wonod Huror Retail SA | 391200WLN00ZH5R20305 | VD | CORP | E5124 | RATINGS |
| E5131 | Wonod Bunem Industries SA | 724500S6MKGNUW1YNO80 | ES | CORP | E5125 | RATINGS |
| E5132 | Vesol Group BV | 724500QJUUI5LKTI3C20 | NL | CORP |  | RATINGS |
| E5133 | Vesol Foods plc | 969500J32JMVAGT5XX78 | GB | BANK | E5132 | RATINGS |
| E5134 | Vesol Steel BV | 213800V5SY9HVVH89I73 | NL | CORP | E5132 | RATINGS |
| E5135 | Vesol Water plc | 815600B50R7RCXJCG654 | GB | CORP | E5133 | RATINGS |
| E5136 | Vesol Media BV | 9695009T9PZ49BUP3C12 | NL | CORP | E5134 | RATINGS |
| E5137 | Vesol Mining plc | 391200PAVBV771X60G26 | GB | CORP | E5135 | RATINGS |
| E5138 | Vesol Industries Inc | 2138002Z9W6X6X5YQN20 | US | CORP | E5135 | RATINGS |
| E5139 | Vesol Culol Energy Inc | 213800INQCRDMG5HO840 | US | CORP | E5136 | RATINGS |
| E5140 | Vesol Utilities BV | 96950007MJPNSV9ARG39 | NL | CORP | E5136 | RATINGS |
| E5141 | Vesol Ruvil Media SA | 549300JP8CDGC9RN3314 | FR | CORP | E5137 | RATINGS |
| E5142 | Vesol Virar Telecom Inc | 549300VQ7TV7QQTTJ202 | US | CORP | E5138 | RATINGS |
| E5143 | Vesol Foter Logistics AG | 213800743WX4EJ6MMH41 | DE | BANK | E5139 | RATINGS |
| E5144 | Vesol Fatel Utilities BV | 969500GFDTSIDFLG0O24 | NL | CORP | E5140 | RATINGS |
| E5145 | Geren Group SA | 8156002XDJU2OFI9JC47 | VD | CORP |  | RATINGS |
| E5146 | Geren Energy SA | 724500QHWRH6PSRJB040 | VD | CORP | E5145 | RATINGS |
| E5147 | Geren Water AG | 815600S1LI7Y275JJ993 | DE | CORP | E5145 | RATINGS |
| E5148 | Geren Logistics SA | 3912000L90VKK6MV1D59 | VD | CORP | E5145 | RATINGS |
| E5149 | Geren Neter Logistics plc | 724500KDF2MI69677N89 | GB | BANK | E5146 | RATINGS |
| E5150 | Geren Mining SA | 549300AHLPW75N4A3P31 | VD | CORP | E5146 | RATINGS |
| E5151 | Geren Telecom SA | 724500JOQIZEOMT4DE02 | FR | CORP | E5147 | RATINGS |
| E5152 | Geren Kisom Retail AG | 969500KMO65XFN7T1392 | DE | CORP | E5147 | RATINGS |
| E5153 | Geren Ruter Retail SA | 213800WLIYSMBT2VLW94 | CV | CORP | E5148 | RATINGS |
| E5154 | Geren Retail SA | 391200B0TX9R4N6COU24 | ES | CORP | E5148 | RATINGS |
| E5155 | Geren Capital plc | 969500PPONW5EN3A0733 | GB | CORP | E5149 | RATINGS |
| E5156 | Geren Holdings AG | 549300FMGCHAUC6SYX63 | DE | CORP | E5150 | RATINGS |
| E5157 | Geren Vuned Holdings Inc | 969500HA82B367X5RV65 | US | CORP | E5151 | RATINGS |
| E5158 | Geren Airlines AG | 724500615K23IF07SC87 | DE | CORP | E5152 | RATINGS |
| E5159 | Geren Shipping SA | 815600MOW11MEYYEAT50 | ES | BANK | E5153 | RATINGS |
| E5160 | Geren Property AG | 213800X8REMKLULD8R08 | DE | BANK | E5154 | RATINGS |
| E5161 | Geren Pusar Holdings SA | 549300C8D7Z8XUZARH87 | FR | CORP | E5155 | RATINGS |
| E5162 | Geren Media AG | 391200PY74BRVIRVI292 | DE | CORP | E5156 | RATINGS |
| E5163 | Geren Steel Inc | 8156005XKKPSIHTNOJ57 | US | CORP | E5157 | RATINGS |
| E5164 | Geren Pharma AG | 391200934W0J85BZXD30 | DE | CORP | E5158 | RATINGS |
| E5165 | Geren Nuvel Logistics SA | 815600FOHPLYMM6VXG89 | ES | CORP | E5159 | RATINGS |
| E5166 | Geren Wuran Airlines AG | 549300U864OQO9SEFJ88 | DE | CORP | E5160 | RATINGS |
| E5167 | CERID CHEMICALS SA | 391200B1GR4AGTV5WY99 | VD | CORP |  | RESEARCH |
| E5168 | BELIR MINING SA | 54930011OTFCAUKB0A28 | FR | CORP | E5086 | RESEARCH |
| E5169 | WONOD STEEL BV | 969500W1342GHBTOGH81 | VD | CORP |  | RESEARCH |
| E5170 | Hetar Test plc | 8156005EHMOKQENUED17 | VD | CORP | E5001 | QA |

Query 2:

| source_system | count_star() | count(DISTINCT lei) | sum(CAST((lei IS NULL) AS INTEGER)) |
|---|---|---|---|
| QA | 14 | 14 | 0 |
| RESEARCH | 29 | 29 | 0 |
| RATINGS | 497 | 495 | 2 |

Query 3:

| n_lei | n_nolei |
|---|---|
| 495 | 2 |

Query 4:

| rating_type | ccy_basis | action | count_star() |
|---|---|---|---|
| CC |  | AS | 2 |
| CO |  | AS | 7 |
| INST |  | AF | 1 |
| INST |  | AS | 113 |
| INST |  | DG | 3 |
| INST |  | EX | 9 |
| LTIDR | FC | AF | 81 |
| LTIDR | FC | AS | 426 |
| LTIDR | FC | DG | 108 |
| LTIDR | FC | RW | 45 |
| LTIDR | FC | UG | 45 |
| LTIDR | FC | WD | 39 |
| LTIDR | LC | AF | 4 |
| LTIDR | LC | AS | 19 |
| LTIDR | LC | DG | 4 |
| LTIDR | LC | RW | 3 |
| LTIDR | LC | UG | 3 |
| LTIDR | LC | WD | 1 |
| STIDR | FC | AF | 1 |

Query 5:

| entity_id | name | lei | country | entity_type | parent_id | source_system |
|---|---|---|---|---|---|---|
| E10 | Halden Bank AG | 391200QYPVFF2O9K2039 | DE | BANK | E09 | RATINGS |
| E17 | HALDEN BANK | 391200QYPVFF2O9K2039 | LU | BANK |  | RESEARCH |
| E1179 | Cotan Foods SA | 391200USHZVHBK9FHP01 | ES | CORP | E1162 | RATINGS |
| E1180 | COTAN FOODS SA | 391200USHZVHBK9FHP01 | IT | CORP |  | RESEARCH |
| E1213 | Winim Mining SA | 549300A64I73OEIC4R87 | FR | CORP |  | RATINGS |
| E1214 | WINIM MINING SA | 549300A64I73OEIC4R87 | NL | CORP |  | RESEARCH |
| E1209 | Malid Mining SpA | 549300HWTXXHJP2HKU38 | IT | CORP |  | RATINGS |
| E1210 | MALID MINING SPA | 549300HWTXXHJP2HKU38 | DE | CORP |  | RESEARCH |
| E1245 | Gater Holdings SA | 815600LRX1P8142NMF42 | CV | CORP |  | RATINGS |
| E1246 | GATER HOLDINGS SA | 815600LRX1P8142NMF42 | FR | CORP |  | RESEARCH |
| E1156 | Ruven Airlines AG | 969500KYKHRI6N2WRN19 | DE | CORP |  | RATINGS |
| E1157 | RUVEN AIRLINES | 969500KYKHRI6N2WRN19 | US | CORP |  | RESEARCH |
| E5106 | Wonod Steel BV | 969500W1342GHBTOGH81 | NL | CORP | E5105 | RATINGS |
| E5169 | WONOD STEEL BV | 969500W1342GHBTOGH81 | VD | CORP |  | RESEARCH |

Run more queries, or give the final answers.
The model
<invoke name="sql">
CREATE OR REPLACE TABLE ce AS
WITH e AS (SELECT * FROM entities WHERE source_system<>'QA'),
c AS (SELECT entity_id, coalesce(lei,entity_id) k FROM e),
canon AS (SELECT k, min(entity_id) FILTER (WHERE source_system='RATINGS') cid FROM e JOIN c USING(entity_id) GROUP BY k)
SELECT canon.cid AS id, r.name, r.lei, coalesce((SELECT x.country FROM e x WHERE coalesce(x.lei,x.entity_id)=canon.k AND x.source_system='RESEARCH'), r.country) country, r.entity_type,
 (SELECT canon2.cid FROM canon canon2 JOIN c c2 ON c2.k=canon2.k WHERE c2.entity_id=r.parent_id) parent
FROM canon JOIN e r ON r.entity_id=canon.cid;
CREATE OR REPLACE TABLE amap AS
SELECT a.*, coalesce((SELECT canon.cid FROM entities x JOIN ce canon ON canon.lei=x.lei WHERE x.entity_id=a.rated_id), a.rated_id) cid
FROM rating_actions a WHERE a.rated_id NOT IN (SELECT entity_id FROM entities WHERE source_system='QA');
SELECT count(*) FROM ce; SELECT count(*) FROM amap;
</invoke>
```

Oops, I must use ```sql fences.

```sql
CREATE OR REPLACE TABLE ce AS
WITH e AS (SELECT * FROM entities WHERE source_system<>'QA'),
c AS (SELECT entity_id, coalesce(lei,entity_id) k FROM e),
canon AS (SELECT k, min(entity_id) FILTER (WHERE source_system='RATINGS') cid FROM e JOIN c USING(entity_id) GROUP BY k)
SELECT canon.cid AS id, r.name, r.lei, coalesce((SELECT x.country FROM e x WHERE coalesce(x.lei,x.entity_id)=canon.k AND x.source_system='RESEARCH'), r.country) country, r.entity_type,
 (SELECT canon2.cid FROM canon canon2 JOIN c c2 ON c2.k=canon2.k WHERE c2.entity_id=r.parent_id) parent
FROM canon JOIN e r ON r.entity_id=canon.cid;
```

```sql
CREATE OR REPLACE TABLE amap AS
SELECT a.*, coalesce((SELECT ce.id FROM entities x JOIN ce ON ce.lei=x.lei WHERE x.entity_id=a.rated_id), a.rated_id) cid
FROM rating_actions a WHERE a.rated_id NOT IN (SELECT entity_id FROM entities WHERE source_system='QA');
```

```sql
SELECT (SELECT count(*) FROM ce) n_ce, (SELECT count(*) FROM amap) n_amap;
```
Query results
Query 1 failed: Parser Error: syntax error at or near "fences"

Query 2 failed: Catalog Error: Table with name ce does not exist!

Query 3 failed: Catalog Error: Table with name ce does not exist!

Query 4 failed: Binder Error: Referenced table "canon" not found!

Run more queries, or give the final answers.
The model
```sql
CREATE OR REPLACE TABLE m AS
SELECT e.entity_id, coalesce(r.entity_id, e.entity_id) cid
FROM entities e
LEFT JOIN (SELECT lei, min(entity_id) entity_id FROM entities WHERE source_system='RATINGS' AND lei IS NOT NULL GROUP BY lei) r ON r.lei=e.lei
WHERE e.source_system<>'QA';
```

```sql
CREATE OR REPLACE TABLE ce AS
SELECT r.entity_id id, r.name, r.lei, coalesce(res.country, r.country) country, r.entity_type, mp.cid parent
FROM entities r
LEFT JOIN entities res ON res.lei=r.lei AND res.source_system='RESEARCH'
LEFT JOIN m mp ON mp.entity_id=r.parent_id
WHERE r.source_system='RATINGS';
```

```sql
CREATE OR REPLACE TABLE amap AS
SELECT a.*, coalesce(m.cid, a.rated_id) cid
FROM rating_actions a LEFT JOIN m ON m.entity_id=a.rated_id
WHERE a.rated_id NOT IN (SELECT entity_id FROM entities WHERE source_system='QA');
```

```sql
SELECT (SELECT count(*) FROM ce) n_ce, (SELECT count(*) FROM amap) n_amap, (SELECT count(*) FROM rating_actions) n_all;
```
Query results
Query 1:

| Count |
|---|
| 526 |

Query 2:

| Count |
|---|
| 497 |

Query 3:

| Count |
|---|
| 887 |

Query 4:

| n_ce | n_amap | n_all |
|---|---|---|
| 497 | 887 | 914 |

Run more queries, or give the final answers.
The model
<invoke name="sql">
</invoke>
```sql
CREATE OR REPLACE TABLE st AS
SELECT * FROM (SELECT *, row_number() OVER (PARTITION BY cid, rating_type, coalesce(ccy_basis,'') ORDER BY date DESC, action_id DESC) rn
FROM amap WHERE date<='2026-10-01' AND action<>'EX') WHERE rn=1;
```

```sql
CREATE OR REPLACE TABLE tree AS
WITH RECURSIVE t(id, root, depth) AS (SELECT id,id,0 FROM ce WHERE parent IS NULL UNION ALL SELECT ce.id, t.root, t.depth+1 FROM ce JOIN t ON ce.parent=t.id) SELECT * FROM t;
```

```sql
SELECT 'Q8 default' q, string_agg(DISTINCT cid, ',') v FROM st WHERE rating_type='LTIDR' AND rating IN ('RD','D')
UNION ALL SELECT 'Q9', count(DISTINCT cid)::varchar FROM st WHERE rating_type='LTIDR' AND rating<>'WD'
UNION ALL SELECT 'Q18 RWN', string_agg(DISTINCT cid, ',') FROM st WHERE rating_type='LTIDR' AND watch='RWN'
UNION ALL SELECT 'Q19 NEG', string_agg(DISTINCT cid||'/'||ccy_basis||'/'||action||'/'||rating, ',') FROM st WHERE rating_type='LTIDR' AND outlook='NEG'
UNION ALL SELECT 'Q21 WD', string_agg(DISTINCT cid, ',') FROM (SELECT cid FROM st WHERE rating_type='LTIDR' GROUP BY cid HAVING bool_and(rating='WD'))
UNION ALL SELECT 'Q22 ever', string_agg(DISTINCT cid, ',') FROM amap WHERE rating_type='LTIDR' AND rating IN ('RD','D')
UNION ALL SELECT 'Q7 DG2026', string_agg(DISTINCT cid, ',') FROM amap WHERE action='DG' AND rating_type='LTIDR' AND date BETWEEN '2026-01-01' AND '2026-12-31'
UNION ALL SELECT 'Q25 instIG', count(*)::varchar FROM st WHERE rating_type='INST' AND rating IN ('AAA','AA+','AA','AA-','A+','A','A-','BBB+','BBB','BBB-')
UNION ALL SELECT 'Q48 inst', count(*)::varchar FROM st WHERE rating_type='INST' AND rating<>'WD'
UNION ALL SELECT 'Q40 GB', count(DISTINCT st.cid)::varchar FROM st JOIN ce ON ce.id=st.cid WHERE rating_type='LTIDR' AND rating<>'WD' AND country='GB'
UNION ALL SELECT 'Q43 LU', string_agg(id,',') FROM ce WHERE country='LU'
UNION ALL SELECT 'Q35 halden', count(*)::varchar FROM tree WHERE root='E09'
UNION ALL SELECT 'Q36 nw', count(*)::varchar FROM tree WHERE root='E02'
UNION ALL SELECT 'Q51 cerid', count(*)::varchar FROM tree WHERE root='E5001'
UNION ALL SELECT 'Q52 rotam', count(*)::varchar FROM tree WHERE root='E5086'
UNION ALL SELECT 'Q59 depth3', count(*)::varchar FROM tree WHERE root='E5001' AND depth=3
UNION ALL SELECT 'Q49/50', (SELECT root||'/'||depth FROM tree WHERE id='E5047')
UNION ALL SELECT 'Q53', (SELECT t1.root||'|'||t2.root FROM tree t1, tree t2 WHERE t1.id='E5062' AND t2.id='E5086')
UNION ALL SELECT 'Q54', string_agg(ce.id,',') FROM tree JOIN ce USING(id) WHERE root='E5105' AND country='VD'
UNION ALL SELECT 'Q56', string_agg(DISTINCT st.cid||':'||rating, ',') FROM st JOIN tree ON tree.id=st.cid WHERE root='E5132' AND rating_type='LTIDR' AND ccy_basis='FC'
UNION ALL SELECT 'Q61', string_agg(st.cid||':'||rating, ',') FROM st JOIN tree ON tree.id=st.cid WHERE root='E5001' AND rating_type='LTIDR' AND ccy_basis='FC' AND rating NOT IN ('AAA','AA+','AA','AA-','A+','A','A-','BBB+','BBB','BBB-')
UNION ALL SELECT 'Q57', (SELECT string_agg(id||':'||parent,',') FROM ce WHERE id IN ('E5011','E5005','E5002','E5001','E5013','E5006'))
UNION ALL SELECT 'Q30/31', string_agg(st.cid||':'||ce.country||':'||st.rating||':'||(SELECT rating FROM st c WHERE c.rating_type='CC' AND c.cid=ce.country),',') FROM st JOIN ce ON ce.id=st.cid WHERE st.rating_type='LTIDR' AND st.ccy_basis='FC' AND ce.country IN ('CV','VD') AND st.rating<>'WD'
UNION ALL SELECT 'CC', string_agg(cid||':'||rating,',') FROM st WHERE rating_type='CC';
```

```sql
SELECT 'Q55' q, count(DISTINCT s.cid)::varchar v FROM st s WHERE rating_type='LTIDR' AND rating<>'WD' AND EXISTS (
 WITH RECURSIVE up(id) AS (SELECT parent FROM ce WHERE id=s.cid UNION ALL SELECT ce.parent FROM ce JOIN up ON ce.id=up.id)
 SELECT 1 FROM up JOIN ce ON ce.id=up.id WHERE ce.country='VD')
UNION ALL SELECT 'Q58', string_agg(DISTINCT g.id,',') FROM instruments i JOIN m mi ON mi.entity_id=i.issuer_id JOIN m mg ON mg.entity_id=i.guarantor_id JOIN tree ti ON ti.id=mi.cid JOIN tree g ON g.id=mg.cid WHERE ti.root<>g.root
UNION ALL SELECT 'Q60', (SELECT string_agg(i.issuer_id||'/'||i.guarantor_id||'/'||ti.root||'/'||tg.root,',') FROM instruments i JOIN tree ti ON ti.id=i.issuer_id JOIN tree tg ON tg.id=i.guarantor_id WHERE i.instrument_id='I5007')
UNION ALL SELECT 'E5011 chain', (SELECT string_agg(id||'>'||parent,',') FROM ce WHERE id IN ('E5011','E5005','E5013','E5006','E5002'))
UNION ALL SELECT 'ratings', string_agg(cid||':'||rating_type||coalesce(ccy_basis,'')||':'||rating||':'||outlook||':'||watch,' ; ') FROM st WHERE cid IN ('E01','E02','E05','E07','E09','E10','E11','E12','E14','E15','E13','E06','I03','I05','I06','I08','I02','I01','I07','I04','CV','VD');
```
Query results
Query 1:

| Count |
|---|
| 553 |

Query 2:

| Count |
|---|
| 497 |

Query 3:

| q | v |
|---|---|
| Q8 default | E08 |
| Q9 | 377 |
| Q18 RWN | E1109,E1168,E1061,E1238,E1297,E1013,E1098,E1126,E06,E1133,E1088,E1194,E1267,E1181,E1099,E1260,E1132,E1019,E1006,E1264,E1039,E1266,E1059,E1203,E1146,E1323,E1066,E1314,E1317,E1037,E1209,E1242 |
| Q19 NEG | E1211/FC/AF/BBB-,E5023/FC/DG/B-,E1046/FC/UG/AA-,E5019/FC/DG/BBB+,E5059/FC/DG/BB+,E5020/FC/DG/BBB+,E5119/FC/DG/A,E1158/FC/AF/BBB,E1055/FC/UG/BBB-,E5039/FC/DG/BB-,E1105/FC/UG/A+,E1034/FC/DG/BBB+,E5097/FC/DG/B-,E1263/FC/DG/BBB-,E1188/FC/UG/BB-,E1294/FC/DG/A+,E1059/FC/AF/BB-,E1228/FC/DG/BB+,E5099/FC/DG/BB-,E1029/FC/UG/A-,E1271/FC/AF/A-,E1079/FC/AF/BB+,E5073/FC/DG/BBB-,E5116/FC/DG/A,E09/FC/AF/A,E1190/FC/UG/BBB,E1282/FC/AF/BB+,E1261/FC/AF/B+,E5062/FC/DG/B-,E5141/FC/DG/BB,E1072/FC/AF/BB-,E5013/FC/DG/B-,E5156/FC/DG/B-,E5050/FC/DG/BBB+,E1248/FC/AF/A-,E1064/FC/UG/A-,E1118/FC/DG/BB+,E5102/FC/DG/BBB-,E5057/FC/DG/A,E01/FC/AF/BBB,E5131/FC/DG/B,E1056/FC/DG/A+,E1160/FC/DG/B,E1080/FC/DG/A-,E5113/FC/DG/BB-,E1300/FC/DG/BBB,E1005/FC/DG/BB |
| Q21 WD | E1244,E1316,E1021,E07,E1166,E1140,E1063,E1138,E1041,E1107,E1062,E1277,E1206,E1320,E1219,E1205,E1121,E1225,E1200,E1234,E1233,E1048,E1084,E1001,E1124,E1172,E1032,E1253,E1308,E1159,E1155,E1057,E1007,E1076,E1218 |
| Q22 ever | E08 |
| Q7 DG2026 | E1034,E1167,E1058,E1053,E1144,E5019,E1159,E1057,E1243,E5113,E08,E1169,E1186,E1112,E1080,E5116,E5156,E1294,E1151,E1064,E1093,E1051,E1290,E1285,E5097,E1163,E1213,E1300,E1307,E1229,E1298,E1263,E1255,E5033,E1228,E10,E5059,E1160 |
| Q25 instIG | 72 |
| Q48 inst | 113 |
| Q40 GB | 79 |
| Q43 LU | E10 |
| Q35 halden | 3 |
| Q36 nw | 2 |
| Q51 cerid | 58 |
| Q52 rotam | 19 |
| Q59 depth3 | 12 |
| Q49/50 | E5001/6 |
| Q53 | E5059|E5086 |
| Q54 | E5106,E5124,E5130 |
| Q56 | E5140:A+,E5141:BB,E5133:BBB-,E5136:BBB-,E5143:A,E5132:BB+,E5144:BB- |
| Q61 | E5023:B-,E5025:BB,E5012:BB,E5013:B-,E5024:B-,E5042:BB,E5047:BB,E5007:B,E5037:B+,E5028:B-,E5048:B-,E5010:BB-,E5029:BB+,E5030:B,E5021:B,E5016:BB,E5039:BB-,E5041:B-,E5022:BB- |
| Q57 | E5011:E5005,E5005:E5002,E5013:E5006,E5006:E5002,E5002:E5001 |
| Q30/31 | E1136:CV:A-:A,E1144:CV:B+:A,E5023:VD:B-:BB,E1059:CV:BB-:A,E1096:CV:BBB:A,E1185:CV:BB+:A,E1243:CV:BB:A,E1307:VD:BB-:BB,E1039:CV:A:A,E1223:CV:BB+:A,E5012:VD:BB:BB,E5024:VD:B-:BB,E5047:VD:BB:BB,E5117:CV:BB:A,CV:CV:BBB+:A,E5116:CV:A:A,E1019:CV:BB+:A,E1194:CV:A:A,E15:CV:A:A,E5104:CV:BB:A,E5127:CV:B:A,E5106:VD:B-:BB,E5130:VD:B-:BB,E1106:VD:B+:BB,E1126:VD:BB:BB,E1101:VD:BB:BB,E1028:VD:BB:BB,E1217:CV:BB-:A,E5091:VD:BB:BB,E05:VD:BB:BB,E1229:CV:BB+:A,E1283:CV:BB:A,E1071:CV:B+:A,E1304:CV:BB:A,E1313:VD:BB-:BB,E5098:CV:B-:A,E5124:VD:BB:BB,E1236:VD:BB:BB |
| CC | VD:BB,CV:A |

Query 4:

| q | v |
|---|---|
| Q55 | 31 |
| Q58 | E5145 |
| Q60 | E5133/E5145/E5132/E5145 |
| E5011 chain | E5011>E5005,E5005>E5002,E5013>E5006,E5006>E5002,E5002>E5001 |
| ratings |  |

Run more queries, or give the final answers.
The model
**Q1.** A-. Kestrel's rating from A01 (assigned 2024-03-12) held until A02 on 2025-06-20.

**Q2.** No. The only 2026 Kestrel action, A03, is an affirmation with the outlook revised to Negative.

**Q3.** No. The 2031 note (I02) is subordinated and was cut to BB+ by A07, which is speculative grade.

**Q4.** Positive. E02 and E03 share an LEI, so they are one entity, and the latest action is A09 (2025-09-15, outlook POS).

**Q5.** Northwind Holdings (E02). I03 is guaranteed by E02, and its instrument rating is A (A10/A11), in line with E02's issuer rating of A.

**Q6.** Valdoria Telecom's FC rating is BB against BBB- for LC (A14, A13). The FC rating is held to Valdoria's Country Ceiling of BB (A12), and LC ratings are not capped.

**Q7.** 38 issuers had a downgrade action in 2026; the full list is in the JSON. It includes E08 and E10.

**Q8.** E08. Saxby Shipping went to RD on 2026-07-08 (A22).

**Q9.** 377 distinct issuers held an issuer rating on 1 Oct 2026, with duplicate records merged by LEI and QA records excluded.

**Q10.** Depends. Valdoria Telecom's LC rating is BBB- (investment grade) and its FC rating is BB (speculative grade).

**Q11.** BBB+. Marlow was downgraded to BBB+ on 2024-09-30 (A36).

**Q12.** A-, from A34 (assigned 2023-01-15).

**Q13.** 1, the downgrade A36.

**Q14.** None. Halden Foods' first rating was assigned on 2024-02-01 (A30).

**Q15.** A-. E10 and E17 share an LEI, and the downgrade to BBB+ came only on 2026-04-15 (A27).

**Q16.** No. Marlow was BBB+ on 2025-01-01 and is BBB+ now; the later actions are a watch (A35) and an affirmation (A33).

**Q17.** No. Orrin Bank's only 2026 action is the Rating Watch Negative A17, which is not a downgrade.

**Q18.** 32 issuers were on RWN on 1 Oct 2026, including E06; the list is in the JSON.

**Q19.** 47 issuers had a Negative outlook, including E01 and E09; the list is in the JSON.

**Q20.** No. Pellam's rating was withdrawn for commercial reasons (A19), and the rating before that was BB.

**Q21.** 35 entities had their issuer rating withdrawn and held no issuer rating on 1 Oct 2026, including E07; the list is in the JSON.

**Q22.** E08 is the only entity ever at RD or D.

**Q23.** F2 (A04).

**Q24.** Yes. Kestrel's issuer rating is BBB.

**Q25.** 72 instruments held an investment-grade rating on 1 Oct 2026. EX actions are excluded.

**Q26.** A+ (A40).

**Q27.** A- (A42). The note is subordinated.

**Q28.** BBB+ (A38).

**Q29.** None. The Republic of Valdoria has only a Country Ceiling (A12), which is not a rating.

**Q30.** 13 entities had an FC rating exactly at their country's ceiling (BB for VD, A for CV); the list is in the JSON.

**Q31.** No. No company in CV or VD has an FC rating above its ceiling.

**Q32.** E09. The chain is E11, E10, E09.

**Q33.** Halden Bank (E10). It guarantees I05, which is rated BBB+ after A29, in line with E10's own BBB+.

**Q34.** No. Halden Bank (E10) sits under E09, while Halden Foods (E12) has no parent.

**Q35.** 3.

**Q36.** 2. E03 is the same entity as E02.

**Q37.** 497. There are 495 distinct LEIs plus 2 records with no LEI, with QA excluded.

**Q38.** No. They have different LEIs.

**Q39.** A.

**Q40.** 79.

**Q41.** None. Brindle Capital (E16) is a QA record and is ignored.

**Q42.** LU. The RESEARCH record E17 holds for country.

**Q43.** 1, which is Halden Bank (E10).

**Q44.** Yes. I07 is in XVD, the domestic currency of VD, where the issuer is domiciled.

**Q45.** No. Local-currency debt is not capped by the ceiling.

**Q46.** No. Halden Leasing (E11) has only a credit opinion (A46), which is not a rating.

**Q47.** None. I08 has only an Expected rating (A47, EX).

**Q48.** 113 instruments held a rating.

**Q49.** E5001.

**Q50.** 6.

**Q51.** 58.

**Q52.** 19.

**Q53.** No. The RATINGS parent link puts E5062 under E5059 (via E5060). The RESEARCH record E5168 pointing to Rotam does not override it.

**Q54.** E5106, E5124 and E5130. E5106's country is VD per the RESEARCH record E5169.

**Q55.** 31.

**Q56.** BB- (E5144).

**Q57.** E5002. E5011 goes via E5005 to E5002, and E5013 goes via E5006 to E5002.

**Q58.** E5145 (Geren Group SA) guarantees I5007, which is issued by E5133 in the Vesol group.

**Q59.** 12.

**Q60.** Geren Group (E5145). It is not in the same group as the issuer E5133, which is in Vesol (E5132).

**Q61.** 19.

```json
{
"Q1":{"rating":"A-"},
"Q2":{"downgraded":"no"},
"Q3":{"investment_grade":"no","rating":"BB+"},
"Q4":{"outlook":"POS"},
"Q5":{"risk_of":"E02","rating":"A"},
"Q7":{"issuers":["E1034","E1167","E1058","E1053","E1144","E5019","E1159","E1057","E1243","E5113","E08","E1169","E1186","E1112","E1080","E5116","E5156","E1294","E1151","E1064","E1093","E1051","E1290","E1285","E5097","E1163","E1213","E1300","E1307","E1229","E1298","E1263","E1255","E5033","E1228","E10","E5059","E1160"]},
"Q8":{"entities":["E08"]},
"Q9":{"count":377},
"Q10":{"investment_grade":"depends"},
"Q11":{"rating":"BBB+"},
"Q12":{"rating":"A-"},
"Q13":{"count":1},
"Q14":{"rating":"none"},
"Q15":{"rating":"A-"},
"Q16":{"changed":"no"},
"Q17":{"downgraded":"no"},
"Q18":{"issuers":["E1109","E1168","E1061","E1238","E1297","E1013","E1098","E1126","E06","E1133","E1088","E1194","E1267","E1181","E1099","E1260","E1132","E1019","E1006","E1264","E1039","E1266","E1059","E1203","E1146","E1323","E1066","E1314","E1317","E1037","E1209","E1242"]},
"Q19":{"issuers":["E1211","E5023","E1046","E5019","E5059","E5020","E5119","E1158","E1055","E5039","E1105","E1034","E5097","E1263","E1188","E1294","E1059","E1228","E5099","E1029","E1271","E1079","E5073","E5116","E09","E1190","E1282","E1261","E5062","E5141","E1072","E5013","E5156","E5050","E1248","E1064","E1118","E5102","E5057","E01","E5131","E1056","E1160","E1080","E5113","E1300","E1005"]},
"Q20":{"in_default":"no"},
"Q21":{"entities":["E1244","E1316","E1021","E07","E1166","E1140","E1063","E1138","E1041","E1107","E1062","E1277","E1206","E1320","E1219","E1205","E1121","E1225","E1200","E1234","E1233","E1048","E1084","E1001","E1124","E1172","E1032","E1253","E1308","E1159","E1155","E1057","E1007","E1076","E1218"]},
"Q22":{"entities":["E08"]},
"Q23":{"rating":"F2"},
"Q24":{"investment_grade":"yes"},
"Q25":{"count":72},
"Q26":{"rating":"A+"},
"Q27":{"rating":"A-"},
"Q28":{"rating":"BBB+"},
"Q29":{"rating":"none"},
"Q30":{"entities":["E5012","E5047","E1126","E1101","E1028","E5091","E05","E5124","E1236","E1039","E5116","E1194","E15"]},
"Q31":{"any":"no"},
"Q32":{"parent":"E09"},
"Q33":{"risk_of":"E10","rating":"BBB+"},
"Q34":{"same_group":"no"},
"Q35":{"count":3},
"Q36":{"count":2},
"Q37":{"count":497},
"Q38":{"same":"no"},
"Q39":{"rating":"A"},
"Q40":{"count":79},
"Q41":{"rating":"none"},
"Q42":{"country":"LU"},
"Q43":{"count":1},
"Q44":{"local_currency":"yes"},
"Q45":{"above_ceiling":"no"},
"Q46":{"issuer_rating":"no"},
"Q47":{"rating":"none"},
"Q48":{"count":113},
"Q49":{"parent":"E5001"},
"Q50":{"count":6},
"Q51":{"count":58},
"Q52":{"count":19},
"Q53":{"same_group":"no"},
"Q54":{"entities":["E5106","E5124","E5130"]},
"Q55":{"count":31},
"Q56":{"rating":"BB-"},
"Q57":{"entity":"E5002"},
"Q58":{"entities":["E5145"]},
"Q59":{"count":12},
"Q60":{"risk_of":"E5145","same_group":"no"},
"Q61":{"count":19}
}
```