Иногда это необходимо, в основном это не
В большинстве случаев это не нужно, как в вашем примере.
SELECT SINGLE
s можно разделить на 3 группы:
- Полный поиск по первичному ключу
- Проверка существования
- Другое
Полный поиск по первичному ключу
matnr
и spras
поля первичного ключа таблицы makt
, поэтому одна и та же строка уже возвращена, независимо от какого-либо порядка.
Я полагаю, что сторонний инструмент недостаточно совершенен для проверки полей ключа выбранной таблицы.
Проверка существования
Довольно много SELECT SINGLE используются только для проверки существования значений в БД.
SELECT SINGLE posnr
FROM VBPA
WHERE vbeln = iv_vbeln
Нам все равно, какой номер элемента возвращается, просто если он больше 0. Преобразование здесь также не требуется, порядок не имеет значения.
Когда этополезно?
Только в третьем случае, когда у нас нет полного первичного ключа, но мы все еще заботимся о порядке.Это довольно редко.
Проверка на первичный ключ трудна, и совершенно невозможно определить, нуждался ли оригинальный программист в определенном порядке из кода.
Этот инструмент даст вам больше ложных срабатываний, чем полезных результатов.