Skip to content

Commit 35a323a

Browse files
committed
refactor _prepare_aliases() and _prepare_conditions() methods
1 parent 0dd5345 commit 35a323a

File tree

1 file changed

+8
-15
lines changed

1 file changed

+8
-15
lines changed

simple_query_builder/querybuilder.py

Lines changed: 8 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -198,21 +198,14 @@ def _prepare_aliases(self, items: Union[str, list, dict], as_list: bool = False)
198198
for item in items:
199199
if isinstance(items, list):
200200
if isinstance(item, str):
201-
new_item = item.replace('.', '`.`')
202-
sql.append(f"`{new_item}`")
201+
sql.append(f"{item}")
203202
elif isinstance(item, dict):
204-
first_item = list(item.values())[0].replace('.', '`.`')
203+
first_item = list(item.values())[0]
205204
alias = list(item.keys())[0]
206-
if first_item.find('(') > -1 or first_item.find(')') > -1:
207-
sql.append(f"{first_item}" if isinstance(alias, int) else f"{first_item} AS `{alias}`")
208-
else:
209-
sql.append(f"`{first_item}`" if isinstance(alias, int) else f"`{first_item}` AS `{alias}`")
205+
sql.append(f"{first_item}" if isinstance(alias, int) else f"{first_item} AS {alias}")
210206
elif isinstance(items, dict):
211-
new_item = items[item].replace('.', '`.`')
212-
if new_item.find('(') > -1 or new_item.find(')') > -1:
213-
sql.append(f"{new_item}" if isinstance(item, int) else f"{new_item} AS `{item}`")
214-
else:
215-
sql.append(f"`{new_item}`" if isinstance(item, int) else f"`{new_item}` AS `{item}`")
207+
new_item = items[item]
208+
sql.append(f"{new_item}" if isinstance(item, int) else f"{new_item} AS {item}")
216209
else:
217210
self.set_error(f"Incorrect type of items in {inspect.stack()[0][3]} method")
218211
return ''
@@ -232,17 +225,17 @@ def _prepare_conditions(self, where: Union[str, list]) -> dict:
232225
for cond in where:
233226
if isinstance(cond, list):
234227
if len(cond) == 3:
235-
field = cond[0].replace('.', '`.`')
228+
field = self._prepare_field(cond[0])
236229
operator = cond[1].upper()
237230
value = cond[2]
238231
if operator in self._OPERATORS:
239232
if operator == 'IN' and (isinstance(value, list) or isinstance(value, tuple)):
240233
values = ("?," * len(value)).rstrip(',')
241-
sql += f"(`{field}` {operator} ({values}))"
234+
sql += f"({field} {operator} ({values}))"
242235
for item in value:
243236
result['values'].append(item)
244237
else:
245-
sql += f"({field} {operator} ?)" if field.find('(') > -1 or field.find(')') > -1 else f"(`{field}` {operator} ?)"
238+
sql += f"({field} {operator} ?)"
246239
result['values'].append(value)
247240
elif isinstance(cond, str):
248241
upper = cond.upper()

0 commit comments

Comments
 (0)