Вопросы с тегом «subquery»

Термин SQL, используемый для описания того, когда оператор SELECT используется как часть более крупного оператора SQL. Более крупный оператор может быть DML и всегда находится в квадратных или круглых скобках.

3
Почему этот запрос работает?
У меня есть две таблицы, table_a (идентификатор, имя) и table_b (идентификатор), скажем, на Oracle 12c. Почему этот запрос не возвращает исключение? select * from table_a where name in (select name from table_b); Из того, что я понимаю, Oracle видит это как select * from table_a where name = name; Но …


2
Псевдонимы подзапросов совпадают с псевдонимами основных запросов
У меня есть SQL-запрос, псевдонимы которого совпадают с псевдонимами некоторых его подзапросов. Например: select * from ROOM r where ... ( select * from ROAD r where ... ) Это прекрасно работает, так как псевдоним подзапроса, кажется, скрывает основной. Будет ли это работать так во всех случаях? Получу ли я …

2
ВЫБОР нескольких столбцов через подзапрос
Я пытаюсь выбрать 2 столбца из подзапроса в следующем запросе, но не могу это сделать. Попытался создать таблицу псевдонимов, но все еще не мог получить их. SELECT DISTINCT petid, userid, (SELECT MAX(comDate) FROM comments WHERE petid=pet.id) AS lastComDate, (SELECT userid FROM comments WHERE petid=pet.id ORDER BY id DESC LIMIT 1) …

3
Медленное обновление на большой таблице с подзапросом
Имея SourceTableзаписи> 15MM и записи Bad_Phrase> 3K, для выполнения следующего запроса на SQL Server 2005 SP4 требуется почти 10 часов. UPDATE [SourceTable] SET Bad_Count= ( SELECT COUNT(*) FROM Bad_Phrase WHERE [SourceTable].Name like '%'+Bad_Phrase.PHRASE+'%' ) В английском языке этот запрос подсчитывает количество различных фраз, перечисленных в Bad_Phrase, которые являются подстрокой поля …

1
Почему подзапрос использует параллелизм, а объединение - нет?
Почему сервер SQL использует параллелизм при выполнении этого запроса, который использует подзапрос, но не при использовании соединения? Объединенная версия запускается последовательно и занимает около 30 раз больше времени. Регистрация версии: ~ 30 сек Версия подзапроса: <1секунда РЕДАКТИРОВАТЬ: XML-версии плана запроса: JOIN версия Версия SUBQUERY

1
Ошибка Postgres [столбец должен появляться в предложении GROUP BY или использоваться в статистической функции] при использовании подзапроса
У меня есть две таблицы employeeи phones. Сотрудник может иметь от 0 до n телефонных номеров. Я хочу перечислить имена сотрудников с их номерами телефонов. Я использую запрос ниже, который работает нормально. SELECT empname,array_agg(phonenumber) AS phonenumbers FROM employee LEFT OUTER JOIN phones ON employee.empid = phones.empid GROUP BY employee.empid Таблица …

1
Плохо выполняющий подзапрос с датами сравнения
При использовании подзапроса для поиска общего количества всех предыдущих записей с совпадающим полем, производительность ужасна для таблицы с всего лишь 50 тыс. Записей. Без подзапроса запрос выполняется за несколько миллисекунд. С подзапросом время выполнения превышает одну минуту. Для этого запроса результат должен: Включите только те записи в пределах указанного диапазона …

2
Как SQL Удалить, используя подзапрос
Следующий код был добавлен одним из наших разработчиков для удаления дублирующихся записей из таблицы: DELETE SubQuery FROM ( SELECT ID ,FK1 ,FK2 ,CreatedDateTime ,ROW_NUMBER() OVER(PARTITION BY FK1, FK2 ORDER BY CreatedDateTime) AS RowNumber FROM Table ) AS SubQuery WHERE RowNumber > 1 При рассмотрении кода я предполагал, что он не …

1
Почему мой запрос к SQL Server ведет себя иначе при обновлении, чем при SELECT?
Я написал запрос SQL Server, который обновляет записи, чтобы иметь последовательный номер после разделения на поле. Когда я запускаю его как оператор SELECT, все выглядит великолепно: DECLARE @RunDetailID INT = 448 DECLARE @JobDetailID INT SELECT @JobDetailID = [JobDetailID] FROM [RunDetails] WHERE [RunDetailID] = @RunDetailID SELECT [OrderedRecords].[NewSeq9], RIGHT([OrderedRecords].[NewSeq9], 4) FROM ( …

3
SQLITE: проблема тегов и продуктов
Я ищу способ создать запрос, чтобы сделать следующее: Давайте рассмотрим 3 таблицы: продукты: Список продуктов теги: список тегов tag_ties: таблица, используемая для привязки тега к товару Давайте рассмотрим эту структуру для каждой таблицы: Товары: id (int, автоинкремент) название (varchar, название продукта) Метки: id (int autoincrement) ярлык (varchar, ярлык ярлыка) Tag_ties: …
10 query  sqlite  subquery 

3
Запрос PostgreSQL очень медленный при добавлении подзапроса
У меня есть относительно простой запрос к таблице с 1,5M строк: SELECT mtid FROM publication WHERE mtid IN (9762715) OR last_modifier=21321 LIMIT 5000; EXPLAIN ANALYZE вывод: Limit (cost=8.84..12.86 rows=1 width=8) (actual time=0.985..0.986 rows=1 loops=1) -> Bitmap Heap Scan on publication (cost=8.84..12.86 rows=1 width=8) (actual time=0.984..0.985 rows=1 loops=1) Recheck Cond: ((mtid …

1
MySQL: оптимизируйте UNION с помощью «ORDER BY» во внутренних запросах
Я просто настроил систему регистрации, которая состоит из нескольких таблиц с одинаковым расположением. Существует одна таблица для каждого источника данных. Для просмотра журнала я хочу UNION все журнальные таблицы , фильтровать их по аккаунту , добавить псевдостолбец для идентификации источника, сортировать их по времени , и ограничить их для нумерации …

1
Как я могу получить иерархические значения из запроса ниже?
У меня есть таблица с именем Categoryстолбца CategoryID. В той же таблице есть столбец ссылок fParentCategoryID. Мне нужно, чтобы все идентификаторы категорий и идентификаторы их подкатегорий были разделены запятой. Например: если ID родительской категории 10 равен 1, а ID родительской категории 20 равен 10, то когда я печатаю ID 20 …

3
Проверьте, есть ли какое-либо из значений в результате подзапроса
У меня сложный подзапрос, который возвращает список идентификаторов заказа. Мне нужно получить список клиентов, у которых есть эти заказы. Проблема заключается в том, что существует два способа назначения клиента для заказа (одно из двух полей). Я мог бы просто сделать что-то вроде этого: select * from Customers where orderId in …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.