Я прочитал много статей об этом.Я хочу услышать от вас.Моя проблема: таблица: ID (INT, уникальный, автоматическое увеличение), заголовок (varchar), контент (текст), ключевые слова (varchar)
Мой PHP-код всегда вставляет новую запись, но не принимаетдублированная база записей на заголовок или ключевые слова.Таким образом, заголовок или ключевое слово не может быть основным полем.Мой PHP-код должен проверять существующие и вставлять 10-20 записей одновременно.
Итак, я проверяю так:
SELECT * FROM TABLE WHERE TITLE=XXX
И если ничего не вернуть, то я делаю INSERT.Я прочитал какой-то другой пост.И один парень говорит:
INSERT IGNORE INTO Table values()
Другой парень предлагает:
SELECT COUNT(ID) FROM TABLE
Если он вернет 0, тогда введите INSERT
Я не знаю, какой из них быстреемежду этими запросами.
И у меня есть еще 1 вопрос, что отличается и быстрее в этих запросах:
SELECT COUNT(ID) FROM ..
SELECT COUNT(0) FROM ...
SELECT COUNT(1) FROM ...
SELECT COUNT(*) FROM ...
Все они показывают мне общее количество записей в таблице, но я нене знаю, MySQL считает, номер 0 или 1 это мое поле идентификатора?Даже когда я делаю SELECT COUNT (1000), я все равно получаю общее количество записей своей таблицы, в то время как моя таблица имеет только 4 столбца.
Я использую MySQL Workbench, есть ли какие-либо опции для скорости тестирования в этом приложении?