mirror of
https://github.com/Fabio286/antares.git
synced 2025-02-11 09:10:51 +01:00
feat: support to aliased tables
This commit is contained in:
parent
a8cd17748f
commit
1658432fd3
@ -353,7 +353,8 @@ export class MySQLClient extends AntaresCore {
|
||||
name: field.name,
|
||||
orgName: field.orgName,
|
||||
schema: field.db,
|
||||
table: field.orgTable,
|
||||
table: field.table,
|
||||
orgTable: field.orgTable,
|
||||
type: 'varchar'
|
||||
};
|
||||
}) : [];
|
||||
|
@ -106,7 +106,7 @@ export default {
|
||||
return resultsWithRows[index].fields.map(field => {
|
||||
if (field.table) cachedTable = field.table;// Needed for some queries on information_schema
|
||||
return {
|
||||
table: field.table || cachedTable,
|
||||
table: field.orgTable || cachedTable,
|
||||
schema: field.schema || 'INFORMATION_SCHEMA'
|
||||
};
|
||||
}).filter((val, i, arr) => arr.findIndex(el => el.schema === val.schema && el.table === val.table) === i);
|
||||
@ -158,8 +158,12 @@ export default {
|
||||
|
||||
if (selectedFields.length) {
|
||||
fields = fields.map(field => {
|
||||
const alias = result.fields.find(resField => resField.orgName === field.name).name || field.name;
|
||||
return { ...field, alias };
|
||||
const aliasObj = result.fields.find(resField => resField.orgName === field.name);
|
||||
return {
|
||||
...field,
|
||||
alias: aliasObj.name || field.name,
|
||||
tableAlias: aliasObj.table || field.table
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -288,10 +288,18 @@ export default {
|
||||
return this.fields.filter(field =>
|
||||
field.name === cKey ||
|
||||
field.alias === cKey ||
|
||||
|
||||
`${field.table}.${field.name}` === cKey ||
|
||||
`${field.table}.${field.alias}` === cKey ||
|
||||
|
||||
`${field.table.toLowerCase()}.${field.name}` === cKey ||
|
||||
`${field.table.toLowerCase()}.${field.alias}` === cKey)[0];
|
||||
`${field.table.toLowerCase()}.${field.alias}` === cKey ||
|
||||
|
||||
`${field.tableAlias}.${field.name}` === cKey ||
|
||||
`${field.tableAlias}.${field.alias}` === cKey ||
|
||||
|
||||
`${field.tableAlias.toLowerCase()}.${field.name}` === cKey ||
|
||||
`${field.tableAlias.toLowerCase()}.${field.alias}` === cKey)[0];
|
||||
},
|
||||
isNull (value) {
|
||||
return value === null ? ' is-null' : '';
|
||||
|
@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<div class="workspace-query-tab column col-12 columns col-gapless">
|
||||
<div v-show="isSelected" class="workspace-query-tab column col-12 columns col-gapless">
|
||||
<div class="workspace-query-runner column col-12">
|
||||
<div class="workspace-query-runner-footer">
|
||||
<div class="workspace-query-buttons">
|
||||
@ -234,38 +234,3 @@ export default {
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.workspace-tabs {
|
||||
align-content: baseline;
|
||||
|
||||
.workspace-query-runner {
|
||||
.workspace-query-runner-footer {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
padding: 0.3rem 0.6rem 0.4rem;
|
||||
align-items: center;
|
||||
|
||||
.workspace-query-buttons {
|
||||
display: flex;
|
||||
|
||||
.btn {
|
||||
display: flex;
|
||||
align-self: center;
|
||||
color: $body-font-color;
|
||||
margin-right: 0.4rem;
|
||||
}
|
||||
}
|
||||
|
||||
.workspace-query-info {
|
||||
display: flex;
|
||||
|
||||
> div + div {
|
||||
padding-left: 0.6rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
|
Loading…
x
Reference in New Issue
Block a user