<p>I'm looking for the best way to interpret the standard (well, standardish) Ethernet PHY registers, to determine the speed that an Ethernet link is actually running at.  (e.g. 10/100/1000 and full/half-duplex)</p>

<p>I daresay that this is to be found in the source of things like Linux, and I'm just off to look there now, but if anyone has a good reference I'd be interested.</p>

<p>What I'm interested in is if it actually linked and what it linked at, rather than the vast sea of possibilities that each end has advertised at the outset.</p>

How about this:
```
```
select id, first, last from mytable
where first != upper(first) or last != upper(last);
```
```