Estoy creando una vista desde 2 tablas. Necesito crear una nueva columna en la vista; esta columna debe establecerse en 0 cuando estoy seleccionando de la primera tabla, 1 de la segunda:
Table A: +---------+---------+ |column A |column B | +---------+---------+ | Boston | USA | +---------+---------+ | Chicago | USA | +---------+---------+ |Las Vegas| USA | +---------+---------+ Table B: +---------+---------+ |column A |column B | +---------+---------+ | Paris | Europe | +---------+---------+ | Madrid | Europe | +---------+---------+ | London | Europe | +---------+---------+ Resulting View: +---------+---------+---------+ |column A |column B | column C| +---------+---------+---------+ | Boston | USA | 0 | +---------+---------+---------+ | Chicago | USA | 0 | +---------+---------+---------+ |Las Vegas| USA | 0 | +---------+---------+---------+ | Paris | Europe | 1 | +---------+---------+---------+ | Madrid | Europe | 1 | +---------+---------+---------+ | London | Europe | 1 | +---------+---------+---------+Simplemente use una unión con una columna calculada:
SELECT columnA, columnB, 0 AS columnC FROM TableA UNION ALL SELECT columnA, columnB, 1 FROM TableB ORDER BY columnC;SELECT columnA, colunmB, 0 as columnC from tableA UNION SELECT columnA, colunmB, 1 as columnC from tableB,parece que está utilizando UNION para crear la vista. Luego solo agregue el campo ficticio en cada sql