Это довольно легко обнаружить.В конце концов, вы программист.
https://docs.google.com/spreadsheets/d/1tBfebBKRIumJ0I3BaN2gNwGIMivc1wDJ-AVeohH0DCc/edit?usp=sharing
Вы запускаете электронную таблицу.Microsoft Excel, OpenOffice, Gnumeric, MyOffice, Google Spreasheet - просто любые.Вам нужны очень простые функции.
Вы копируете имена столбцов select
DB в один столбец электронной таблицы, а имена столбцов group by
- в другую строку.
2.1.Там выше они оказались одной ячейкой после копирования их из переполнения стека в OpenOffice, поэтому мне пришлось использовать функцию «Разделить данные по столбцам», и поэтому для меня они заканчивались строками, а не столбцами.Менее удобно читать, но не сильно меняется.
2.2.Обратите внимание, вам не нужны формулы столбцов, все эти выражения, вам нужны имена столбцов.
2.3.Эта методика очень очевидна и очень проста, для запросов типа Select aaa, x.aaa, tablename.aaa from tablename as x
она будет видеть три разных столбца.Что ж, это поможет вам сделать так, чтобы все ваши столбцы ссылались равномерно в вашем запросе.
затем вы сортируете оба столбца электронной таблицы (или в моем случае я сортировал строки) по алфавиту.
теперь вы вставляете простую формулу в столбец между этими столбцами,как {B1} =A1=C1
и скопируйте его по всему столбцу (или строке).
Теперь просто спуститесь вниз по этому столбцу и проверьте, где «True» было изменено на «False».
Несколько операций вырезания-перемещения-вставки и восстановления этой формулы - и вы обнаружите все несинхронизированные столбцы.
В вашем случае - иВы можете проверить это по ссылке - первый несинхронизированный столбец был CodVidro2
- однако он был пропущен из Group By
, так что это не имело значения.Таким образом, вы перемещаете «Захват по столбцам» дальше на одну ячейку, чтобы восстановить синхронизацию, и идете вниз по линии, определяя следующее место, ИСТИНА становится ЛОЖНОЙ.
Это будет obv.POS
столбец БД, который, по-видимому, отсутствует.
Позже появятся еще два несинхронизированных столбца, но снова они будутне быть частью Group by
, поэтому, скорее всего, не будет иметь значения.
Обратите внимание, что этот метод очень прост и ультра прост, он не будет выделять столбцы
, упомянутые внутри выражений (включая функцию агрегирования), но не перечислены явно в списке
select
- если вы не извлечете ихиз этих выражений.Однако для тех менее простых случаев вы можете сделать это вручную.И в 90% случаев электронная таблица - любая электронная таблица - с готовностью сделает для вас сравнение.