oracle sql调错
select count(*) from ((select (case when (instr(',' || wm_concat(type) || ',', ',develop-plan,') 0) then 'develop-plan' else 'unRead' end) type, max(id) id, name, node_level, project, end, max(created_date) created_date, center, year_flg,
select count(*) from ((select (case when (instr(',' || wm_concat(type) || ',', ',develop-plan,') > 0) then 'develop-plan' else 'unRead' end) type, max(id) id, name, node_level, project, end, max(created_date) created_date, center, year_flg, sequence, min(isRead) isRead, MyReplace(wm_concat(msgCreateDate), ',') msgCreateDate, wm_concat(group_name), max(planId), 0 owe_days, 0 owe_money from (select 'develop-plan' as type, node.node_id as id, template_node.node_name as name, template_node.node_level, project.project_name as project, node.schedule_end_date as end, warning.CREATED_DATE as created_date, '' as center, '' as year_flg, ROW_NUMBER() OVER(PARTITION BY node.templet_id, project.project_project_id ORDER BY warning.created_date ASC) as sequence, (select min(t.is_read) from plan6_message_user_read t where t.node_id = node.node_id and t.need_reader = 'zhangch' group by t.node_id) isRead, '' msgCreateDate, info.name group_name, info.biz_cd planId, 0 owe_days, 0 owe_money from plan6_warning warning, plan6_node node, project_distribution info, project_period pp, project_project project, plan6_templet_node template_node where warning.node_id = node.node_id and node.plan_id = info.biz_cd and info.project_period_id = pp.project_period_id and pp.is_enabled = 1 and pp.project_project_id = project.project_project_id and template_node.node_id = node.templet_id and info.if_in_plan = 1 and (warning.charger_cd = 'zhangch' OR node.charger_cd = 'zhangch' OR node.center_manager_cd = 'zhangch' OR project.project_charger_cd = 'zhangch' OR project.project_charger_cd2 = 'zhangch' OR project.project_charger_cd_bis = 'zhangch' OR ('wubc' = 'zhangch' AND template_node.node_level in (1, 2)) OR (('xuhf' = 'zhangch' OR 'zhanghf' = 'zhangch') and template_node.node_level = 1)) and warning.stat = 2 and node.status = 1 and node.is_enabled 0 and warning.stat = 2 union select 'unRead' tyep, node.node_id id, template_node.node_name as name, template_node.node_level, project.project_name as project, node.schedule_end_date as end, to_date('', 'yyyymmdd hh24:mi:ss') as created_date, '' as center, '' as year_flg, ROW_NUMBER() OVER(PARTITION BY node.templet_id, project.project_project_id ORDER BY r.created_date ASC) as sequence, r.is_read isRead, to_char(r.created_date, 'yyyymmdd hh24:mi:ss') msgCreateDate, info.name group_name, info.biz_cd planId, 0 owe_days, 0 owe_money from plan6_message_user_read r, plan6_node node, project_distribution info, project_period pp, project_project project, plan6_templet_node template_node where r.node_id = node.node_id and node.plan_id = info.biz_cd and info.project_period_id = pp.project_period_id and pp.is_enabled = 1 and pp.project_project_id = project.project_project_id and template_node.node_id = node.templet_id and info.if_in_plan = 1 and node.is_enabled 0 and r.need_reader = 'zhangch' and r.is_read = '0') warning where warning.sequence = 1 group by name, node_level, project, end, center, year_flg, sequence) union (select 'oa_meeting' as type, metting.oa_meeting_id as id, TO_CHAR(metting.business) as name, 10 as node_level, '' as project, metting.target_date as end, warning.created_date as created_date, '' as center, '' as year_flg, 0 as sequence, '' isRead, '' msgCreateDate, '' group_name, '' planId, 0 owe_days, 0 owe_money from oa_meeting metting, plan_warning warning where metting.oa_meeting_id = warning.target and metting.HIDDEN_FLG = 0 and metting.status in (1, 2, 4) and metting.target_date is not null and instr(';' || warning.responsible_person, ';zhangch;') > 0));
|
报错如下:
ORA-01790的错误,查到是因为报错的那个wm_concate后面的字段不是group by的字段。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Der Aufbewahrungszeitraum von Oracle-Datenbankprotokollen hängt vom Protokolltyp und der Konfiguration ab, einschließlich: Redo-Protokolle: Wird durch die maximale Größe bestimmt, die mit dem Parameter „LOG_ARCHIVE_DEST“ konfiguriert wird. Archivierte Redo-Protokolle: Bestimmt durch die maximale Größe, die durch den Parameter „DB_RECOVERY_FILE_DEST_SIZE“ konfiguriert wird. Online-Redo-Logs: nicht archiviert, gehen beim Neustart der Datenbank verloren und der Aufbewahrungszeitraum stimmt mit der Instanzlaufzeit überein. Audit-Protokoll: Wird durch den Parameter „AUDIT_TRAIL“ konfiguriert und standardmäßig 30 Tage lang aufbewahrt.

Die Funktion in Oracle zum Berechnen der Anzahl der Tage zwischen zwei Daten ist DATEDIFF(). Die spezifische Verwendung ist wie folgt: Geben Sie die Zeitintervalleinheit an: Intervall (z. B. Tag, Monat, Jahr) Geben Sie zwei Datumswerte an: Datum1 und Datum2DATEDIFF(Intervall, Datum1, Datum2) Gibt die Differenz in Tagen zurück

Die Startsequenz der Oracle-Datenbank ist: 1. Überprüfen Sie die Voraussetzungen. 3. Starten Sie die Datenbankinstanz. 6. Überprüfen Sie den Datenbankstatus . Aktivieren Sie den Dienst (falls erforderlich). 8. Testen Sie die Verbindung.

Der Datentyp INTERVAL wird in Oracle zur Darstellung von Zeitintervallen verwendet. Die Syntax lautet INTERVAL <Präzision> <Einheit>. Sie können Additions-, Subtraktions-, Multiplikations- und Divisionsoperationen verwenden, um INTERVAL zu betreiben, was für Szenarien wie das Speichern von Zeitdaten geeignet ist Berechnung von Datumsdifferenzen.

Die von Oracle benötigte Speichermenge hängt von der Datenbankgröße, dem Aktivitätsniveau und dem erforderlichen Leistungsniveau ab: zum Speichern von Datenpuffern, Indexpuffern, zum Ausführen von SQL-Anweisungen und zum Verwalten des Datenwörterbuch-Cache. Die genaue Menge hängt von der Datenbankgröße, dem Aktivitätsgrad und dem erforderlichen Leistungsniveau ab. Zu den Best Practices gehören das Festlegen der geeigneten SGA-Größe, die Dimensionierung von SGA-Komponenten, die Verwendung von AMM und die Überwachung der Speichernutzung.

Um die Anzahl der Vorkommen eines Zeichens in Oracle zu ermitteln, führen Sie die folgenden Schritte aus: Ermitteln Sie die Gesamtlänge einer Zeichenfolge. Ermitteln Sie die Länge der Teilzeichenfolge, in der ein Zeichen vorkommt. Zählen Sie die Anzahl der Vorkommen eines Zeichens, indem Sie die Länge der Teilzeichenfolge subtrahieren von der Gesamtlänge.

Anforderungen an die Hardwarekonfiguration des Oracle-Datenbankservers: Prozessor: Multi-Core, mit einer Hauptfrequenz von mindestens 2,5 GHz. Für große Datenbanken werden 32 Kerne oder mehr empfohlen. Speicher: Mindestens 8 GB für kleine Datenbanken, 16–64 GB für mittelgroße Datenbanken, bis zu 512 GB oder mehr für große Datenbanken oder hohe Arbeitslasten. Speicher: SSD- oder NVMe-Festplatten, RAID-Arrays für Redundanz und Leistung. Netzwerk: Hochgeschwindigkeitsnetzwerk (10 GbE oder höher), dedizierte Netzwerkkarte, Netzwerk mit geringer Latenz. Sonstiges: Stabile Stromversorgung, redundante Komponenten, kompatibles Betriebssystem und Software, Wärmeableitung und Kühlsystem.

Oracle verwendet das Symbol „||“, um Zeichenfolgen zu verketten. Die Verwendungsmethode ist wie folgt: Verbinden Sie die zu verbindenden Zeichenfolgen mit dem Symbol „||“. Die Priorität der Zeichenfolgenverbindung ist niedrig und es müssen Klammern verwendet werden, um sicherzustellen, dass die leere Zeichenfolge danach immer noch eine leere Zeichenfolge ist die Verbindung; NULL-Wert-Verbindung ist immer noch NULL.
